Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
ai-yunshou-vue
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AI云守
ai-yunshou-vue
Commits
ae074865
Commit
ae074865
authored
Sep 12, 2024
by
胡占生
🇨🇳
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 算法列表展示兼容问题,修复点位管理展示问题
parent
93db133f
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
57 additions
and
43 deletions
+57
-43
src/views/algorithmList/components/details.vue
src/views/algorithmList/components/details.vue
+18
-15
src/views/algorithmList/index.vue
src/views/algorithmList/index.vue
+28
-25
src/views/system/user/index.vue
src/views/system/user/index.vue
+1
-1
src/views/videoControl/pointControl/index.vue
src/views/videoControl/pointControl/index.vue
+10
-1
src/views/videoControl/videoPreview/index.vue
src/views/videoControl/videoPreview/index.vue
+0
-1
No files found.
src/views/algorithmList/components/details.vue
View file @
ae074865
...
...
@@ -54,10 +54,13 @@
<span>
算法试用
</span>
</div>
<div
style=
"background-color: #E6F3FF;display: grid;grid-template-columns: 1fr 2fr 2fr; gap: 16px;padding: 16px;min-height: 650px;position: relative;"
>
<el-card
style=
"position: relative;max-height: 555px;"
>
<el-card
style=
"position: relative;height: 100%;"
>
<div
class=
"text-style"
style=
"margin: 10px 0;"
>
试用图片与视频:
</div>
<div
class=
"upload-box"
>
<div
class=
"img-box"
v-if=
"imgVideoData.length==0"
>
<img
src=
"@/assets/images/default/Image.png"
width=
"100%"
height=
"52
0px"
/>
<img
src=
"@/assets/images/default/Image.png"
width=
"100%"
height=
"48
0px"
/>
</div>
<div
v-else
style=
"height: 120px;width: 100%; margin: 5px; overflow: hidden;cursor: pointer;border-radius: 10px;"
v-for=
"item in imgVideoData"
:key=
"item.id"
...
...
@@ -68,11 +71,9 @@
<source
:src=
"'http://192.168.3.82'+item.caseFile"
type=
"video/mp4"
/>
</video>
</div>
</div>
</el-card>
<ImgVideoUpload
style=
"position: absolute;bottom: 23px;left: 6%;width: 135px;"
<ImgVideoUpload
style=
"position: absolute;bottom: 15px;left: 20px;width: 135px;"
:modelValue=
"uploadUrl"
:fileType=
"['png', 'jpg', 'mp4']"
:isImgLayout=
"false"
...
...
@@ -80,12 +81,14 @@
:isShowTip=
"false"
@
update:modelObj=
"getImgObj"
/>
</el-card>
<el-card
style=
"position: relative;"
>
<div
class=
"text-style"
style=
"margin: 10px 0;"
>
原始数据:支持自定义上传
</div>
<div
class=
"img-box"
v-if=
"nowImg.length==0"
>
<img
src=
"@/assets/images/default/Image-1.png"
width=
"100%"
/>
<img
src=
"@/assets/images/default/Image-1.png"
width=
"100%"
height=
"480px"
/>
</div>
<div
class=
"img-box"
v-else
style=
"max-height: 366px;overflow: hidden;"
>
<ImagePreview
v-if=
"getFileType(nowImg)=='0'"
:src=
"nowImg"
width=
"100%"
/>
...
...
@@ -93,7 +96,7 @@
<source
:src=
"'http://192.168.3.82'+nowImg"
type=
"video/mp4"
/>
</video>
</div>
<el-button
type=
"primary"
plain
@
click=
"openIdentify"
style=
"position: absolute;bottom: 5px;"
:loading=
"identify"
>
开始识别
</el-button>
<el-button
type=
"primary"
plain
@
click=
"openIdentify"
style=
"position: absolute;bottom:
1
5px;"
:loading=
"identify"
>
开始识别
</el-button>
</el-card>
<el-card
style=
"position: relative;"
element-loading-text=
"正在识别中请稍后..."
>
<div
class=
"text-style"
style=
"margin: 10px 0;"
>
...
...
@@ -102,7 +105,7 @@
<div
v-if=
"!identify"
>
<div
class=
"img-box"
v-if=
"outFilePath.length==0"
>
<div>
{{ resultStr }}
</div>
<img
src=
"@/assets/images/default/Image-1.png"
width=
"100%"
/>
<img
src=
"@/assets/images/default/Image-1.png"
width=
"100%"
height=
"480px"
/>
</div>
<div
class=
"img-box"
v-else
style=
"max-height: 366px;overflow: hidden;"
>
<ImagePreview
v-if=
"getFileType(outFilePath)=='0'"
:src=
"outFilePath"
width=
"100%"
/>
...
...
@@ -117,11 +120,10 @@
<el-progress
:percentage=
"progressValue"
/>
正在识别中请稍后...
</div>
<div
style=
"display: flex;justify-content: space-between;
margin: 10px 0;position: absolute;bottom:
5px;"
>
<div
style=
"display: flex;justify-content: space-between;
position: absolute;bottom: 1
5px;"
>
<!-- <el-button type="primary" plain>重置区域</el-button> -->
<div></div>
<!-- <el-button type="primary" plain @click="downVideo">下载识别视频</el-button> -->
<
!-- <el-button v-if="getFileType(outFilePath)=='1'" type="primary" plain @click="downVideo">下载识别视频</el-button> --
>
<
el-button
type=
"primary"
plain
@
click=
"downVideo(outFilePath)"
>
下载识别视频
</el-button
>
</div>
</el-card>
</div>
...
...
@@ -288,8 +290,8 @@ function getFileType(fileName) {
}
}
function
downVideo
(){
window
.
open
(
baseUrl
+
'
/algorithm/images/ResDir/2024/9/2/1830503463524630529/Safety helmet wearing detection/1725261009531_1.mp4
'
)
function
downVideo
(
url
){
if
(
url
)
window
.
open
(
baseUrl
+
url
)
}
// 进度条
...
...
@@ -322,7 +324,7 @@ getDetials()
<
style
scoped
lang=
"scss"
>
.upload-box
{
// width: 500px
;
width
:
100%
;
border-radius
:
5px
;
display
:
flex
;
flex-direction
:
column
;
...
...
@@ -330,6 +332,7 @@ getDetials()
}
.img-box
{
// width: 500px;
width
:
100%
;
min-height
:
200px
;
// border: 1px solid #d8dce5;
border-radius
:
5px
;
...
...
src/views/algorithmList/index.vue
View file @
ae074865
...
...
@@ -5,10 +5,11 @@
<div
class=
"add-but"
>
<div
class=
"search-input"
>
<el-input
v-model=
"queryParams.
searchValu
e"
v-model=
"queryParams.
algorithmNam
e"
style=
"max-width: 400px"
placeholder=
"请输入
场景
关键字"
placeholder=
"请输入关键字"
class=
"input-with-select"
clearable
>
<template
#append
>
<div
@
click=
"searchList"
class=
"cursor: pointer;"
>
...
...
@@ -22,30 +23,32 @@
</div>
<el-row
:gutter=
"10"
>
<el-col
:xs=
"0"
:sm=
"2"
:md=
"3"
:lg=
"4"
>
<el-card
class=
"left-list"
style=
"height: 100%;"
>
<el-menu
default-active=
"2"
class=
"el-menu-vertical-demo"
>
<el-menu-item
:index=
"'我的算法'"
@
click=
"handMyMenuClick"
>
<span><el-icon
><component
:is=
"'Collection'"
/></el-icon>
我的算法
</span>
</el-menu-item>
<el-divider
style=
"margin: 5px 0;"
/>
<el-menu-item
:index=
"''"
@
click=
"handMenuAllClick"
>
<span>
<el-icon
><component
:is=
"'Discount'"
/></el-icon>
全部算法
</span>
</el-menu-item>
<el-menu-item
v-for=
"item in algorithm_scen"
:key=
"item.value"
:index=
"item.value"
@
click=
"handMenuClick"
>
<span
style=
"display: flex;align-items: center;"
>
<el-icon
><component
:is=
"iconComponent(item.remark)"
/></el-icon>
</span>
<span>
{{ item.label }}
</span>
</el-menu-item>
</el-menu>
</el-card>
<el-scrollbar
:height=
"globalScreenHeight+'px'"
>
<el-card
class=
"left-list"
:style=
"{height:globalScreenHeight+'px'}"
>
<el-menu
default-active=
"2"
class=
"el-menu-vertical-demo"
>
<el-menu-item
:index=
"'我的算法'"
@
click=
"handMyMenuClick"
>
<span><el-icon
><component
:is=
"'Collection'"
/></el-icon>
我的算法
</span>
</el-menu-item>
<el-divider
style=
"margin: 5px 0;"
/>
<el-menu-item
:index=
"''"
@
click=
"handMenuAllClick"
>
<span>
<el-icon
><component
:is=
"'Discount'"
/></el-icon>
全部算法
</span>
</el-menu-item>
<el-menu-item
v-for=
"item in algorithm_scen"
:key=
"item.value"
:index=
"item.value"
@
click=
"handMenuClick"
>
<span
style=
"display: flex;align-items: center;"
>
<el-icon
><component
:is=
"iconComponent(item.remark)"
/></el-icon>
</span>
<span>
{{ item.label }}
</span>
</el-menu-item>
</el-menu>
</el-card>
</el-scrollbar>
</el-col>
<el-col
:xs=
"24"
:sm=
"20"
:md=
"20"
:lg=
"20"
>
<el-scrollbar
:height=
"globalScreenHeight+'px'"
>
<el-card
class=
"right-list"
>
<el-card
class=
"right-list"
>
<
template
v-slot:header
>
<div
class=
"cleartitle"
style=
"justify-content: flex-start"
>
<img
src=
"@/assets/images/logo_video.png"
width=
"25px"
alt=
""
>
<span>
{{
nowTopTitle
}}
</span>
...
...
@@ -185,7 +188,7 @@ import { el } from "element-plus/es/locales.mjs";
const
{
queryParams
,
form
,
rules
}
=
toRefs
(
data
);
function
searchList
(){
if
(
nowTopTitle
.
value
=
'
我的算法
'
){
if
(
nowTopTitle
.
value
=
=
'
我的算法
'
){
getMyList
()
}
else
{
getList
()
...
...
@@ -245,7 +248,7 @@ import { el } from "element-plus/es/locales.mjs";
function
handMyMenuClick
(
row
)
{
queryParams
.
value
.
algorithmStatus
=
''
queryParams
.
value
.
applicationScenarios
=
''
nowTopTitle
.
value
=
row
.
index
nowTopTitle
.
value
=
'
我的算法
'
getMyList
()
}
...
...
src/views/system/user/index.vue
View file @
ae074865
...
...
@@ -630,6 +630,6 @@ function submitForm() {
});
};
getDeptTree
();
//
getDeptTree();
getList
();
</
script
>
src/views/videoControl/pointControl/index.vue
View file @
ae074865
...
...
@@ -109,7 +109,16 @@
label=
"关联算法"
align=
"center"
prop=
"algorithmCount"
/>
>
<
template
#default
="
scope
"
>
<el-tooltip
:content=
"scope.row.algorithmName"
placement=
"top-start"
>
<el-button>
{{
scope
.
row
.
algorithmCount
}}
个
</el-button>
</el-tooltip>
</
template
>
</el-table-column>
<el-table-column
label=
"时段配置"
align=
"center"
prop=
"postSort"
>
<
template
#default
="
scope
"
>
<el-button
...
...
src/views/videoControl/videoPreview/index.vue
View file @
ae074865
...
...
@@ -180,7 +180,6 @@ function getVideos(str){
}
player
.
value
=
new
JSMpeg
.
Player
(
"
ws://192.168.4.232:9999/rtsp?url=
"
+
btoa
(
url
),
{
canvas
:
canvas
})
player
.
value
.
play
()
}
function
handleNodeClick
(
row
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment