Commit dc934196 authored by 朱松文's avatar 朱松文

一些bug处理

parent c744086c
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<tbody> <tbody>
<tr> <tr>
<td colspan="3"> <td colspan="3">
<div class="dog-id">狗-{{dog.id}}</div> <div class="dog-id">狗-{{dog.objId}}</div>
</td> </td>
</tr> </tr>
<tr> <tr>
...@@ -16,21 +16,21 @@ ...@@ -16,21 +16,21 @@
</a> </a>
</div> </div>
</td> </td>
<td> <!-- <td>
<div class="col-left">识别开始时间</div> <div class="col-left">识别开始时间</div>
</td> </td>
<td> <td>
<div>{{ dog.startTimeInDay }}</div> <div>{{ dog.startTimeInDay }}</div>
</td> </td>-->
</tr> </tr>
<tr> <!-- <tr>
<td> <td>
<div class="col-left">识别结束时间</div> <div class="col-left">识别结束时间</div>
</td> </td>
<td> <td>
<div>{{ dog.endTimeInDay }}</div> <div>{{ dog.endTimeInDay }}</div>
</td> </td>
</tr> </tr>-->
<tr> <tr>
<td> <td>
<div class="col-left">识别时长</div> <div class="col-left">识别时长</div>
......
...@@ -12,6 +12,7 @@ import videojs from "video.js"; ...@@ -12,6 +12,7 @@ import videojs from "video.js";
import "@/components/MyVideo/track/index"; import "@/components/MyVideo/track/index";
import "@/components/MyVideo/myContainer/index"; import "@/components/MyVideo/myContainer/index";
import "@/assets/scss/myVideo.scss"; import "@/assets/scss/myVideo.scss";
import { DogData } from "@/components/DogInfo/data";
// import { TrackData } from "./data"; // import { TrackData } from "./data";
//先全局挂载vidoejs对象,以便语言包添加 //先全局挂载vidoejs对象,以便语言包添加
//@ts-ignore //@ts-ignore
...@@ -80,8 +81,9 @@ export default class MyVideo extends Vue { ...@@ -80,8 +81,9 @@ export default class MyVideo extends Vue {
this.$emit("play"); this.$emit("play");
} }
onSrcChange(videoSrc: string) { onSrcChange(dog: DogData) {
this.player.src(videoSrc); this.player.src(dog.fileName);
// this.player.currentTime((dog.startFrameIndex * 40) / 1000);
this.player.play(); this.player.play();
} }
......
import { DogData } from '@/components/DogInfo/data';
import videojs from 'video.js' import videojs from 'video.js'
const Component = videojs.getComponent('Component'); const Component = videojs.getComponent('Component');
...@@ -92,7 +93,7 @@ class DogTrack extends Component { ...@@ -92,7 +93,7 @@ class DogTrack extends Component {
} }
} }
initData(dogIds: any, data: any, currentDogId: string) { initData(dogIds: any, data: any, currentDog: DogData) {
if (!data || data.length === 0) return; if (!data || data.length === 0) return;
//先清理之前狗跟踪的div //先清理之前狗跟踪的div
this.clearOldDogDiv() this.clearOldDogDiv()
...@@ -101,15 +102,23 @@ class DogTrack extends Component { ...@@ -101,15 +102,23 @@ class DogTrack extends Component {
this.dogDiv.clear() this.dogDiv.clear()
this.trackData.length = 0 this.trackData.length = 0
//创建狗的跟踪框 //创建狗的跟踪框
this.createDogDiv(dogIds, currentDogId) this.createDogDiv(dogIds, currentDog.id + '')
//frame map 转数组 //frame map 转数组
this.trackData = Array.from(data); this.trackData = Array.from(data);
//播放时间跳转到第一帧时间 //播放时间跳转到第一帧时间
setTimeout(() => { setTimeout(() => {
const numberDogId = Number(currentDogId) this.player_.currentTime((currentDog.startFrameIndex * 40 - 30) / 1000)
this.player_.play()
/*
const numberDogId = Number(currentDog.id)
console.log('标识文件dogIds:', dogIds)
// console.log('1442513510146908200', dogIds.get(1442513510146908200))
console.log('current-dogId:' + currentDog.id, dogIds.get(currentDog.id * 1))
if (dogIds && dogIds.has(numberDogId)) { if (dogIds && dogIds.has(numberDogId)) {
this.player_.currentTime((dogIds.get(numberDogId).FrameIndex * 40 - 30) / 1000) console.log('currentDog', currentDog, currentDog.startFrameIndex * 40 - 30)
} this.player_.currentTime((currentDog.startFrameIndex * 40 - 30) / 1000)
this.player_.play()
}*/
}, 100); }, 100);
} }
......
...@@ -88,14 +88,14 @@ export async function addTrackData(dog, player) { ...@@ -88,14 +88,14 @@ export async function addTrackData(dog, player) {
//优先考虑读取本地浏览器indexdb缓存 //优先考虑读取本地浏览器indexdb缓存
const cacheFile: any = await getItem(dog.labelFileName) const cacheFile: any = await getItem(dog.labelFileName)
if (cacheFile) { if (cacheFile) {
player.onTrackDataChange(cacheFile.dogIds, cacheFile.trackData, dog.id); player.onTrackDataChange(cacheFile.dogIds, cacheFile.trackData, dog);
return return
} }
const track = await getLabelInfo(dog.labelFileName); const track = await getLabelInfo(dog.labelFileName);
const [dogIds, trackData] = convertLabelInfo(track); const [dogIds, trackData] = convertLabelInfo(track);
//标识文件存储indexedDb //标识文件存储indexedDb
setItem(dog.labelFileName, { dogIds, trackData }) setItem(dog.labelFileName, { dogIds, trackData })
player.onTrackDataChange(dogIds, trackData, dog.id); player.onTrackDataChange(dogIds, trackData, dog);
} catch (err) { } catch (err) {
Message.error("下载标识文件失败"); Message.error("下载标识文件失败");
console.log( console.log(
......
...@@ -181,7 +181,7 @@ export default class AiSearch extends BaseVue { ...@@ -181,7 +181,7 @@ export default class AiSearch extends BaseVue {
) { ) {
continue; continue;
} }
if (val) { if (val || typeof val === "boolean") {
flag = false; flag = false;
break; break;
} }
...@@ -219,7 +219,7 @@ export default class AiSearch extends BaseVue { ...@@ -219,7 +219,7 @@ export default class AiSearch extends BaseVue {
}); });
this.dogs = rp.data?.records || []; this.dogs = rp.data?.records || [];
this.total = rp.data.total; this.total = rp.data?.total || 0;
} }
handleQuery() { handleQuery() {
if (this.queryData.beginTime && this.queryData.endTime) { if (this.queryData.beginTime && this.queryData.endTime) {
...@@ -245,7 +245,7 @@ export default class AiSearch extends BaseVue { ...@@ -245,7 +245,7 @@ export default class AiSearch extends BaseVue {
return isRope(row.withRopeRatio); return isRope(row.withRopeRatio);
} }
async handleEdit(data) { async handleEdit(data) {
this.myVideo.onSrcChange(data.fileName); this.myVideo.onSrcChange(data);
//添加标识文件 //添加标识文件
await addTrackData(data, this.myVideo); await addTrackData(data, this.myVideo);
this.showVideo = true; this.showVideo = true;
......
...@@ -63,7 +63,6 @@ import Search from "@/components/Camera/search.vue"; ...@@ -63,7 +63,6 @@ import Search from "@/components/Camera/search.vue";
import BaseVue from "@/types/baseVue"; import BaseVue from "@/types/baseVue";
import MyVideo from "@/components/MyVideo/index.vue"; import MyVideo from "@/components/MyVideo/index.vue";
import { DogData } from "@/components/DogInfo/data"; import { DogData } from "@/components/DogInfo/data";
import { clear as cacheClear } from "@/utils/indexdbHelper";
import { import {
getCameraDogFormate, getCameraDogFormate,
...@@ -128,7 +127,7 @@ export default class Dashboard extends BaseVue { ...@@ -128,7 +127,7 @@ export default class Dashboard extends BaseVue {
//play video //play video
const myVideo = this_.$refs["my-video"]; const myVideo = this_.$refs["my-video"];
//@ts-ignore //@ts-ignore
myVideo.onSrcChange(dog.fileName); myVideo.onSrcChange(dog);
//添加标识文件 //添加标识文件
await addTrackData(dog, myVideo); await addTrackData(dog, myVideo);
}, 100); }, 100);
......
...@@ -98,7 +98,7 @@ export default class DogHot extends Vue { ...@@ -98,7 +98,7 @@ export default class DogHot extends Vue {
ar.push({ ar.push({
lng: d.longitude, lng: d.longitude,
lat: d.latitude, lat: d.latitude,
count: d.number, count: d.number < 90 ? d.number * 5 : d.number,
}); });
}); });
return ar; return ar;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment