接口对接

This commit is contained in:
yueliuli 2026-04-23 17:02:51 +08:00
parent 71c7186853
commit d8a8b1c94f
1 changed files with 36 additions and 172 deletions

View File

@ -131,7 +131,9 @@ function handleVideoLoadedMetadata() {
}
function getData() {
const { tag, base, objects } = resultData.value
const { class_list, tag, base, objects } = resultData.value
// console.log('', resultData.value)
data.value.隐患列表 = (objects || []).map((obj: any) => {
return [
@ -164,7 +166,7 @@ function getData() {
return {
隐患编号: obj.hazard_track_id || '',
物体编号: obj.track_id || '',
物体类型: resultData.value.class_list?.[obj.class_id] || '',
物体类型: class_list?.[obj.class_id] || '',
隐患名称: tag?.[obj.tag_id] || '',
隐患等级: obj.level === 0 ? '一般隐患' : '重大隐患',
置信度: obj.conf === 0 ? '疑似' : '确信',
@ -258,177 +260,38 @@ onMounted(() => {
const vidFile = router.currentRoute.value.query.vid_file as string
if (vidFile) {
//
// runApi('/get_full_vid_path', {
// vid_file: vidFile,
// }).then((res) => {
// // console.log('', res)
// vidUrl.value = (res as string[])[0]
runApi('/get_full_vid_path', {
vid_file: vidFile,
}).then((res) => {
// console.log('', res)
vidUrl.value = (res as string[])[0]
// //
// const fileName = vidUrl.value.split('\\').pop() || ''
// //
// const fileNameNoExt = fileName.split('.')[0]
// //
// const fileExt = fileName.split('.')[1]
// //
// vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.${fileExt}`
// })
//
const fileName = vidUrl.value.split('\\').pop() || ''
//
const fileNameNoExt = fileName.split('.')[0]
//
const fileExt = fileName.split('.')[1]
//
vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.${fileExt}`
})
//
//
const fileNameNoExt = vidFile.split('.')[0]
//
const fileExt = vidFile.split('.')[1]
vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.${fileExt}`
// const fileNameNoExt = vidFile.split('.')[0]
// //
// const fileExt = vidFile.split('.')[1]
// vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.${fileExt}`
//
// runApi('/run', {
// vid_file: vidFile,
// run_sam3: false,
// run_inspection: false,
// gen_report: false,
// }).then((res) => {
// // console.log('', res)
// //
// // data.value = res
// console.log('', JSON.stringify(res))
// })
//
resultData.value = {
class_list: [
'消火栓',
'插座',
'配电箱',
],
tag: [
'消火栓未点检',
'插座无漏电保护',
'配电箱门口堆放杂物/易燃物',
'配电箱门损坏/缺失',
'消火栓随意堆放杂物',
],
base: [
'*227.消防设施设备缺失损坏,未定期开展检验,安装、配置不合理,处于不良好可用状态。',
'车间、潮湿场所插座回路未安装漏电保护器',
'*83.存在“两个通道”堵塞情形:存在严重占用防火间距、严重破坏防火分区、严重影响人员安全疏散和消防救援的情形。',
'*89.企业在用的特种设备存在重大事故隐患的。',
],
objects: [
{
tag_id: 0,
base_id: 0,
track_id: '18',
hazard_track_id: 0,
class_id: 0,
conf: 0,
level: 0,
start_frame: 551,
end_frame: 581,
start_sec: 18.4,
location: '画面中央偏右的墙壁上',
recommend: '',
},
{
tag_id: 1,
base_id: 1,
track_id: '115',
hazard_track_id: 1,
class_id: 1,
conf: 2,
level: 1,
start_frame: 3618,
end_frame: 3648,
start_sec: 120.6,
location: '画面右侧墙壁上的白色插座面板',
recommend: '',
},
{
tag_id: 2,
base_id: 2,
track_id: '125',
hazard_track_id: 2,
class_id: 2,
conf: 1,
level: 1,
start_frame: 3733,
end_frame: 3763,
start_sec: 124.4,
location: '画面中央偏左墙壁上的配电箱正下方紧贴放置有一台不锈钢设备导致配电箱前1米内被占用。',
recommend: '',
},
{
tag_id: 1,
base_id: 1,
track_id: '127',
hazard_track_id: 3,
class_id: 1,
conf: 1,
level: 1,
start_frame: 3767,
end_frame: 3900,
start_sec: 125.6,
location: '画面左侧墙壁上,操作台上方区域',
recommend: '',
},
{
tag_id: 1,
base_id: 1,
track_id: '130',
hazard_track_id: 4,
class_id: 1,
conf: 1,
level: 1,
start_frame: 3812,
end_frame: 3842,
start_sec: 127.1,
location: '画面中央偏右墙壁上,配电箱下方区域',
recommend: '',
},
{
tag_id: 2,
base_id: 2,
track_id: '196',
hazard_track_id: 5,
class_id: 2,
conf: 1,
level: 1,
start_frame: 5199,
end_frame: 5229,
start_sec: 173.3,
location: '画面中央偏右的蓝色配电箱正下方及周围区域',
recommend: '',
},
{
tag_id: 3,
base_id: 3,
track_id: '206',
hazard_track_id: 6,
class_id: 2,
conf: 1,
level: 1,
start_frame: 5409,
end_frame: 5439,
start_sec: 180.3,
location: '画面左侧墙壁上的灰色配电箱箱门缺失,内部元器件裸露',
recommend: '',
},
{
tag_id: 4,
base_id: 2,
track_id: '221',
hazard_track_id: 7,
class_id: 0,
conf: 1,
level: 1,
start_frame: 5654,
end_frame: 5684,
start_sec: 188.5,
location: '画面右侧的蓝色消火栓箱内部',
recommend: '',
},
],
}
runApi('/run', {
vid_file: vidFile,
run_sam3: false,
run_inspection: false,
gen_report: false,
}).then((res) => {
// console.log('', res[3])
resultData.value = (res as any[])[3] as ResultData
getData()
@ -436,6 +299,7 @@ onMounted(() => {
selectedHazard.value = 0
handleJumpToTimePoint(0)
}
})
}
})
</script>