From d71fd5702c0dca993742cb421e7203eafefd2d97 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@iotlink.com> Date: 星期四, 17 六月 2021 19:22:26 +0800 Subject: [PATCH] 修复朔黄视频标注 --- src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue | 88 +++++++++++++++++++++++++++++--------------- 1 files changed, 58 insertions(+), 30 deletions(-) diff --git a/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue b/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue index 90ab683..3bca753 100644 --- a/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue +++ b/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue @@ -17,7 +17,7 @@ v-for="(item, index) in popDownArr" :key="index" :command="item" - >{{ item.Camera }}</el-dropdown-item> + >{{ item.CameraPosition }}</el-dropdown-item> </el-dropdown-menu> </el-dropdown> @@ -76,7 +76,7 @@ @pause="isStop = true" @play="isStop = false" @timeupdate="timeUpdate" - :source="curVideo.VideoPath" + :source="curVideo.VideoPath | fixPath" :markers="curVideo.marks" :ref="`player_${curVideo.ID}`" /> @@ -97,7 +97,7 @@ <!-- --> <template v-if="index <= videoArrs.length - 1"> <div class="video-box-top"> - <b>{{ videoArrs[index].Camera }}</b> + <b>{{ videoArrs[index].CameraPosition }}</b> </div> <div :class="{ @@ -106,7 +106,7 @@ > <ali-player @timeupdate="timeUpdate(e, index)" - :source="videoArrs[index].VideoPath" + :source="videoArrs[index].VideoPath | fixPath" :markers="videoArrs[index].marks" @pause="isStop = true" @play="isStop = false" @@ -329,6 +329,15 @@ type: Object, }, }, + filters: { + fixPath(str) { + if (!str || str == undefined) { + return "" + } + + return str.replace("/opt/vasystem", "") + } + }, data() { return { guid: 1, @@ -387,7 +396,7 @@ this.renderLabelOpts(); this.setGuid(1); this.getCurVideos(this.videoDetails); - this.getRelatedVideos(this.videoDetails); + // this.getRelatedVideos(this.videoDetails); }, destroyed() { this.videoArrs.length = 0; @@ -517,24 +526,31 @@ }, handleCommand(cmd) { let _this = this; + _this.curVideo = cmd; + _this.curCamera = _this.curVideo.CameraPosition; - getCarVideos({ - TrainNumber: cmd.TrainNumber, - CarNumber: cmd.CarNumber, - Driver1: cmd.Driver1, - }).then((res) => { - _this.allCurVideos = res.data; - _this.curCamera = cmd.Camera; - _this.curRoomVideos = _this.allCurVideos.filter((item) => { - return item.Camera == cmd.Camera; - }); - _this.curVideo = _this.curRoomVideos.find((item) => { - return item.ID == cmd.ID; - }); - _this.$nextTick(() => { - _this.$refs[`player_${_this.curVideo.ID}`][0].init(); - }); + _this.$nextTick(() => { + _this.$refs[`player_${_this.curVideo.ID}`][0].init(); }); + // let _this = this; + // console.log(cmd) + // getCarVideos({ + // TrainNumber: cmd.TrainNumber, + // CarNumber: cmd.CarNumber, + // Driver1: cmd.Driver1, + // }).then((res) => { + // _this.allCurVideos = res.data; + // _this.curCamera = cmd.CameraPosition; + // _this.curRoomVideos = _this.allCurVideos.filter((item) => { + // return item.CameraPosition == cmd.CameraPosition; + // }); + // _this.curVideo = _this.curRoomVideos.find((item) => { + // return item.ID == cmd.ID; + // }); + // _this.$nextTick(() => { + // _this.$refs[`player_${_this.curVideo.ID}`][0].init(); + // }); + // }); }, pad0(val) { @@ -553,10 +569,23 @@ CarNumber: v.CarNumber, Driver1: v.Driver1, }).then((res) => { + // 濉厖鍗曠獥鍙g殑涓嬫媺鑿滃崟 + res.data.forEach((item) => { + _this.popDownArr.push(item); + }); + // if (_this.popDownArr.length) { + // _this.curCamera = _this.popDownArr[0].CameraPosition; + // } + res.data.forEach((item) => { item.marks = _this.mergeMarks(item); }); - _this.curVideo = res.data.find((item) => item.ID == v.ID); + + _this.curVideo = res.data.find((item) => item.id == v.id); + + // 璁剧疆涓嬫媺鑿滃崟閫変腑椤� + _this.curCamera = _this.curVideo.CameraPosition; + _this.curVideo.marks.forEach((item) => { if (item.type == 0) { _this.eventMarks.push(item); @@ -564,6 +593,7 @@ _this.labelMarks.push(item); } }); + if (_this.guid == 1) { _this.maxVideoTime = _this.curVideo.VideoTime; } @@ -571,14 +601,13 @@ _this.videoArrs = res.data.filter((item) => v.GroupID == item.GroupID); _this.allCurVideos = res.data; _this.curRoomVideos = _this.allCurVideos.filter((item) => { - return item.Camera == "鍙告満瀹�"; + return item.CameraPosition.indexOf("鍙告満瀹�") >= 0; }); _this.$nextTick(() => { _this.$refs[`player_${_this.curVideo.ID}`][0].init(); let arr = _this.maxVideoTime.split(":"); - let min = +arr[0], - sec = +arr[1]; + let min = +arr[1], sec = +arr[2]; _this.maxSecond = min * 60 + sec; }); }); @@ -592,7 +621,7 @@ _this.popDownArr.push(item); }); if (_this.popDownArr.length) { - _this.curCamera = _this.popDownArr[0].Camera; + _this.curCamera = _this.popDownArr[0].CameraPosition; } }); }, @@ -654,7 +683,7 @@ submitLabelChecked() { let _this = this; let tempArr = []; - tempArr = this.videoArrs.map((video) => video.ID); + tempArr = this.videoArrs.map((video) => video.id); let desc = this.labelCheckedList.map((lableId) => { for (let label of this.labelOptions) { if (label.ID == lableId) { @@ -665,11 +694,10 @@ let query = { ID: this.selectedLabelId, - ParentID: tempArr.join(","), - ParentUniqID: this.curVideo.GroupID + "", + VideoIds: tempArr.join(","), Time: Math.round(this.setLabelTime) + "", Codes: this.labelCheckedList.join(","), - Desc: desc.join("锛�"), + Desc: desc.join(","), }; editLabel(query).then((rsp) => { -- Gitblit v1.8.0