Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
卡
卡车调度系统
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
caicaicai
卡车调度系统
Commits
0ec8ab8a
Commit
0ec8ab8a
authored
Nov 03, 2022
by
xxx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
b95a37a6
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
190 additions
and
595 deletions
+190
-595
carsEZUIKitJs.vue
src/components/ezuikit/carsEZUIKitJs.vue
+190
-595
No files found.
src/components/ezuikit/carsEZUIKitJs.vue
View file @
0ec8ab8a
...
...
@@ -54,6 +54,10 @@
</div>
</div>
<div
class=
"echarts1"
id=
"echarts1"
></div>
<div
class=
"echarts1_neiquan"
>
<div
style=
"color:white;"
>
总数
</div>
<div
style=
"color:#FDBF46;font-size:24px;"
>
{{
alarmData
.
total
}}
</div>
</div>
</div>
</div>
<div
class=
"aiAnalysisRightViews_1"
>
...
...
@@ -78,8 +82,8 @@
<dd
v-for=
"(item,index) in aiAnalysisTableData"
:key=
"index"
>
<div>
{{
item
.
vehiIdno
}}
</div>
<div>
{{
item
.
name
}}
</div>
<div>
{{
item
.
fileTime
Str
}}
</div>
<div
style=
"text-decoration:underline;cursor: pointer;"
@
click=
"dianjichakan(item
.downloadUrl
)"
>
点击查看
</div>
<div>
{{
item
.
fileTime
}}
</div>
<div
style=
"text-decoration:underline;cursor: pointer;"
@
click=
"dianjichakan(item)"
>
点击查看
</div>
</dd>
</dl>
</div>
...
...
@@ -89,6 +93,18 @@
</el-container>
</el-container>
<div
class=
"videoMengCeng"
v-if=
"videoSrcShow"
>
<div
class=
"closeVideoDiv"
@
click=
"closeVideo"
><i
class=
"el-icon-close"
></i></div>
<video
:src=
"videoSrc"
autoplay
controls
height=
"800px"
width=
"1450px"
></video>
</div>
<div
class=
"elimageMengCeng"
v-if=
"elimageSrcShow"
>
<div
class=
"closeElimageDiv"
@
click=
"closeElimage"
><i
class=
"el-icon-close"
></i></div>
<el-image
style=
"width: 80vw; height: 85vh"
:src=
"elimageSrc"
></el-image>
</div>
</div>
</
template
>
...
...
@@ -126,39 +142,17 @@ export default {
handle
:
0
,
},
//所有车的信息
allCarData
:[],
allCarDataText
:
''
,
searchCarText
:
''
,
//会话号
jsession
:
''
,
tableTimer
:
null
,
//视频数据
videoSrc
:
''
,
videoSrcShow
:
false
,
//图片数据
elimageSrc
:
''
,
elimageSrcShow
:
false
,
};
},
mounted
()
{
let
that
=
this
;
this
.
getCode
();
HttpReq
.
truckDispatching
.
carMonitoringCarsQuery
({
size
:
9999
}).
then
((
res
)
=>
{
let
arr1
=
[];
let
text1
=
''
;
res
.
content
.
forEach
((
item
,
index
)
=>
{
text1
=
text1
+
item
.
carnumber
+
'
,
'
;
arr1
.
push
(
item
.
carnumber
);
})
text1
=
text1
.
substring
(
0
,
text1
.
length
-
1
);
this
.
allCarData
=
arr1
;
this
.
allCarDataText
=
text1
;
//获取会话号
axios
.
get
(
'
/jiankong/StandardApiAction_login.action
'
,
{
params
:
{
account
:
'
admin
'
,
password
:
'
admin
'
}
}).
then
(
function
(
response
)
{
that
.
jsession
=
response
.
data
.
jsession
;
that
.
aiTabPositionFn
();
})
})
//this.mouseoutTable();
},
methods
:
{
getCode
()
{
...
...
@@ -219,164 +213,18 @@ export default {
if
(
this
.
aiTabPosition
==
'
今天
'
){
let
start
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
().
toLocaleDateString
()).
getTime
()));
let
end
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
().
toLocaleDateString
()).
getTime
()
+
24
*
60
*
60
*
1000
-
1
));
//报警列表
let
allAlarmData1
=
[];
this
.
allCarData
.
forEach
((
item1
,
index1
)
=>
{
//获取每辆车的设备号
axios
.
get
(
'
/jiankong/StandardApiAction_getDeviceByVehicle.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
item1
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
devices
.
length
!=
0
){
//有设备号的车获取报警列表
axios
.
get
(
'
/jiankong/StandardApiAction_queryPhoto.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
devIdno
:
response1
.
data
.
devices
[
0
].
did
,
alarmType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
begintime
:
start
,
endtime
:
end
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response2
)
{
if
(
response2
.
data
.
infos
){
response2
.
data
.
infos
.
forEach
((
item2
,
index2
)
=>
{
if
(
item2
.
alarmType
==
620
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
621
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
624
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
625
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
600
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
601
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
172
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
190
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
430
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
431
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
432
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
433
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
})
that
.
aiAnalysisTableData
=
allAlarmData1
;
}
})
}
})
})
//报警echarts
axios
.
get
(
'
/jiankong/StandardApiAction_queryAlarmDetail.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
that
.
allCarDataText
,
begintime
:
start
,
endtime
:
end
,
armType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
alarms
){
let
arr1
=
[];
let
echartsName1
=
[];
//报警数量
let
alarmHandleNum
=
0
;
response1
.
data
.
alarms
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
atp
==
620
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
621
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
624
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
625
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
600
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
601
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
172
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
190
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
})
that
.
alarmData
.
total
=
arr1
.
length
;
arr1
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vid
);
if
(
item2
.
hd
!=
0
){
alarmHandleNum
++
;
}
})
that
.
alarmData
.
handle
=
alarmHandleNum
;
//获取报警信息列表
HttpReq
.
truckDispatching
.
apiCameraUrllistQuery
({
page
:
0
,
size
:
99999
,
startTime
:
start
,
endTime
:
end
}).
then
((
res1
)
=>
{
if
(
res1
.
code
==
200
){
this
.
aiAnalysisTableData
=
res1
.
data
;
this
.
alarmData
.
total
=
res1
.
data
.
length
;
let
handleNum
=
0
;
res1
.
data
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
status
==
1
){
handleNum
++
;
}
})
this
.
alarmData
.
handle
=
handleNum
;
//圆角环形图
let
echarts1Data1
=
[{
value
:
0
,
name
:
'
接打电话
'
},
{
value
:
0
,
name
:
'
分神驾驶
'
},
{
value
:
0
,
name
:
'
前向碰撞
'
},
{
value
:
0
,
name
:
'
疲劳驾驶
'
},
{
value
:
0
,
name
:
'
接近报警
'
}];
let
num1
=
0
;
...
...
@@ -384,16 +232,16 @@ export default {
let
num3
=
0
;
let
num4
=
0
;
let
num5
=
0
;
arr1
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
alarmTypeText
==
'
接打电话
'
){
res1
.
data
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
name
==
'
接打电话
'
){
num1
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item3
.
name
==
'
分神驾驶
'
){
num2
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item3
.
name
==
'
前向碰撞
'
){
num3
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item3
.
name
==
'
疲劳驾驶
'
){
num4
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item3
.
name
==
'
接近报警
'
){
num5
++
;
}
})
...
...
@@ -405,6 +253,10 @@ export default {
that
.
echarts1Data
=
echarts1Data1
;
that
.
echarts1Fn
();
//报警车辆排行榜
let
echartsName1
=
[];
res1
.
data
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vehiIdno
);
})
let
set1
=
new
Set
();
echartsName1
.
forEach
((
item
)
=>
set1
.
add
(
item
))
let
a1
=
Array
.
from
(
set1
);
...
...
@@ -421,17 +273,17 @@ export default {
aa4
.
push
(
0
);
aa5
.
push
(
0
);
})
arr1
.
forEach
((
item4
,
index4
)
=>
{
res1
.
data
.
forEach
((
item4
,
index4
)
=>
{
a1
.
forEach
((
item5
,
index5
)
=>
{
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接打电话
'
){
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接打电话
'
){
aa1
[
index5
]
=
aa1
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
分神驾驶
'
){
aa2
[
index5
]
=
aa2
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
前向碰撞
'
){
aa3
[
index5
]
=
aa3
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
疲劳驾驶
'
){
aa4
[
index5
]
=
aa4
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接近报警
'
){
aa5
[
index5
]
=
aa5
[
index5
]
+
1
;
}
})
...
...
@@ -452,164 +304,18 @@ export default {
let
fmt
=
moment
().
subtract
(
7
,
'
days
'
).
format
(
'
YYYY-MM-DD
'
);
let
start
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
(
fmt
).
toLocaleDateString
()).
getTime
()));
let
end
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
().
toLocaleDateString
()).
getTime
()
+
24
*
60
*
60
*
1000
-
1
));
//报警列表
let
allAlarmData1
=
[];
this
.
allCarData
.
forEach
((
item1
,
index1
)
=>
{
//获取每辆车的设备号
axios
.
get
(
'
/jiankong/StandardApiAction_getDeviceByVehicle.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
item1
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
devices
.
length
!=
0
){
//有设备号的车获取报警列表
axios
.
get
(
'
/jiankong/StandardApiAction_queryPhoto.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
devIdno
:
response1
.
data
.
devices
[
0
].
did
,
alarmType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
begintime
:
start
,
endtime
:
end
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response2
)
{
if
(
response2
.
data
.
infos
){
response2
.
data
.
infos
.
forEach
((
item2
,
index2
)
=>
{
if
(
item2
.
alarmType
==
620
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
621
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
624
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
625
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
600
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
601
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
172
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
190
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
430
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
431
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
432
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
433
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
})
that
.
aiAnalysisTableData
=
allAlarmData1
;
}
})
}
})
})
//报警echarts
axios
.
get
(
'
/jiankong/StandardApiAction_queryAlarmDetail.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
that
.
allCarDataText
,
begintime
:
start
,
endtime
:
end
,
armType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
alarms
){
let
arr1
=
[];
let
echartsName1
=
[];
//报警数量
let
alarmHandleNum
=
0
;
response1
.
data
.
alarms
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
atp
==
620
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
621
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
624
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
625
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
600
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
601
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
172
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
190
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
})
that
.
alarmData
.
total
=
arr1
.
length
;
arr1
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vid
);
if
(
item2
.
hd
!=
0
){
alarmHandleNum
++
;
}
})
that
.
alarmData
.
handle
=
alarmHandleNum
;
//获取报警信息列表
HttpReq
.
truckDispatching
.
apiCameraUrllistQuery
({
page
:
0
,
size
:
99999
,
startTime
:
start
,
endTime
:
end
}).
then
((
res1
)
=>
{
if
(
res1
.
code
==
200
){
this
.
aiAnalysisTableData
=
res1
.
data
;
this
.
alarmData
.
total
=
res1
.
data
.
length
;
let
handleNum
=
0
;
res1
.
data
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
status
==
1
){
handleNum
++
;
}
})
this
.
alarmData
.
handle
=
handleNum
;
//圆角环形图
let
echarts1Data1
=
[{
value
:
0
,
name
:
'
接打电话
'
},
{
value
:
0
,
name
:
'
分神驾驶
'
},
{
value
:
0
,
name
:
'
前向碰撞
'
},
{
value
:
0
,
name
:
'
疲劳驾驶
'
},
{
value
:
0
,
name
:
'
接近报警
'
}];
let
num1
=
0
;
...
...
@@ -617,16 +323,16 @@ export default {
let
num3
=
0
;
let
num4
=
0
;
let
num5
=
0
;
arr1
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
alarmTypeText
==
'
接打电话
'
){
res1
.
data
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
name
==
'
接打电话
'
){
num1
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item3
.
name
==
'
分神驾驶
'
){
num2
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item3
.
name
==
'
前向碰撞
'
){
num3
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item3
.
name
==
'
疲劳驾驶
'
){
num4
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item3
.
name
==
'
接近报警
'
){
num5
++
;
}
})
...
...
@@ -638,6 +344,10 @@ export default {
that
.
echarts1Data
=
echarts1Data1
;
that
.
echarts1Fn
();
//报警车辆排行榜
let
echartsName1
=
[];
res1
.
data
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vehiIdno
);
})
let
set1
=
new
Set
();
echartsName1
.
forEach
((
item
)
=>
set1
.
add
(
item
))
let
a1
=
Array
.
from
(
set1
);
...
...
@@ -654,17 +364,17 @@ export default {
aa4
.
push
(
0
);
aa5
.
push
(
0
);
})
arr1
.
forEach
((
item4
,
index4
)
=>
{
res1
.
data
.
forEach
((
item4
,
index4
)
=>
{
a1
.
forEach
((
item5
,
index5
)
=>
{
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接打电话
'
){
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接打电话
'
){
aa1
[
index5
]
=
aa1
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
分神驾驶
'
){
aa2
[
index5
]
=
aa2
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
前向碰撞
'
){
aa3
[
index5
]
=
aa3
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
疲劳驾驶
'
){
aa4
[
index5
]
=
aa4
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接近报警
'
){
aa5
[
index5
]
=
aa5
[
index5
]
+
1
;
}
})
...
...
@@ -685,164 +395,18 @@ export default {
let
fmt
=
moment
().
subtract
(
30
,
'
days
'
).
format
(
'
YYYY-MM-DD
'
);
let
start
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
(
fmt
).
toLocaleDateString
()).
getTime
()));
let
end
=
this
.
currentTime1
(
new
Date
(
new
Date
(
new
Date
().
toLocaleDateString
()).
getTime
()
+
24
*
60
*
60
*
1000
-
1
));
//报警列表
let
allAlarmData1
=
[];
this
.
allCarData
.
forEach
((
item1
,
index1
)
=>
{
//获取每辆车的设备号
axios
.
get
(
'
/jiankong/StandardApiAction_getDeviceByVehicle.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
item1
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
devices
.
length
!=
0
){
//有设备号的车获取报警列表
axios
.
get
(
'
/jiankong/StandardApiAction_queryPhoto.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
devIdno
:
response1
.
data
.
devices
[
0
].
did
,
alarmType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
begintime
:
start
,
endtime
:
end
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response2
)
{
if
(
response2
.
data
.
infos
){
response2
.
data
.
infos
.
forEach
((
item2
,
index2
)
=>
{
if
(
item2
.
alarmType
==
620
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
621
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
624
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
625
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
600
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
601
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
172
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
190
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
430
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
431
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
432
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
else
if
(
item2
.
alarmType
==
433
){
let
obj1
=
{...
item2
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
allAlarmData1
.
push
(
obj1
);
}
})
that
.
aiAnalysisTableData
=
allAlarmData1
;
}
})
}
})
})
//报警echarts
axios
.
get
(
'
/jiankong/StandardApiAction_queryAlarmDetail.action
'
,
{
params
:
{
jsession
:
that
.
jsession
,
vehiIdno
:
that
.
allCarDataText
,
begintime
:
start
,
endtime
:
end
,
armType
:
'
620,621,624,625,400,172,190,430,431,432,433
'
,
currentPage
:
0
,
pageRecords
:
9999
,
}
}).
then
(
function
(
response1
)
{
if
(
response1
.
data
.
alarms
){
let
arr1
=
[];
let
echartsName1
=
[];
//报警数量
let
alarmHandleNum
=
0
;
response1
.
data
.
alarms
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
atp
==
620
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
621
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接打电话
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
624
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
625
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
分神驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
600
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
601
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
前向碰撞
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
172
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
190
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
疲劳驾驶
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
else
if
(
item1
.
atp
==
430
){
let
obj1
=
{...
item1
};
obj1
.
alarmTypeText
=
'
接近报警
'
;
arr1
.
push
(
obj1
);
}
})
that
.
alarmData
.
total
=
arr1
.
length
;
arr1
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vid
);
if
(
item2
.
hd
!=
0
){
alarmHandleNum
++
;
}
})
that
.
alarmData
.
handle
=
alarmHandleNum
;
//获取报警信息列表
HttpReq
.
truckDispatching
.
apiCameraUrllistQuery
({
page
:
0
,
size
:
99999
,
startTime
:
start
,
endTime
:
end
}).
then
((
res1
)
=>
{
if
(
res1
.
code
==
200
){
this
.
aiAnalysisTableData
=
res1
.
data
;
this
.
alarmData
.
total
=
res1
.
data
.
length
;
let
handleNum
=
0
;
res1
.
data
.
forEach
((
item1
,
index1
)
=>
{
if
(
item1
.
status
==
1
){
handleNum
++
;
}
})
this
.
alarmData
.
handle
=
handleNum
;
//圆角环形图
let
echarts1Data1
=
[{
value
:
0
,
name
:
'
接打电话
'
},
{
value
:
0
,
name
:
'
分神驾驶
'
},
{
value
:
0
,
name
:
'
前向碰撞
'
},
{
value
:
0
,
name
:
'
疲劳驾驶
'
},
{
value
:
0
,
name
:
'
接近报警
'
}];
let
num1
=
0
;
...
...
@@ -850,16 +414,16 @@ export default {
let
num3
=
0
;
let
num4
=
0
;
let
num5
=
0
;
arr1
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
alarmTypeText
==
'
接打电话
'
){
res1
.
data
.
forEach
((
item3
,
index3
)
=>
{
if
(
item3
.
name
==
'
接打电话
'
){
num1
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item3
.
name
==
'
分神驾驶
'
){
num2
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item3
.
name
==
'
前向碰撞
'
){
num3
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item3
.
name
==
'
疲劳驾驶
'
){
num4
++
;
}
else
if
(
item3
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item3
.
name
==
'
接近报警
'
){
num5
++
;
}
})
...
...
@@ -871,6 +435,10 @@ export default {
that
.
echarts1Data
=
echarts1Data1
;
that
.
echarts1Fn
();
//报警车辆排行榜
let
echartsName1
=
[];
res1
.
data
.
forEach
((
item2
,
index2
)
=>
{
echartsName1
.
push
(
item2
.
vehiIdno
);
})
let
set1
=
new
Set
();
echartsName1
.
forEach
((
item
)
=>
set1
.
add
(
item
))
let
a1
=
Array
.
from
(
set1
);
...
...
@@ -887,17 +455,17 @@ export default {
aa4
.
push
(
0
);
aa5
.
push
(
0
);
})
arr1
.
forEach
((
item4
,
index4
)
=>
{
res1
.
data
.
forEach
((
item4
,
index4
)
=>
{
a1
.
forEach
((
item5
,
index5
)
=>
{
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接打电话
'
){
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接打电话
'
){
aa1
[
index5
]
=
aa1
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
分神驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
分神驾驶
'
){
aa2
[
index5
]
=
aa2
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
前向碰撞
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
前向碰撞
'
){
aa3
[
index5
]
=
aa3
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
疲劳驾驶
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
疲劳驾驶
'
){
aa4
[
index5
]
=
aa4
[
index5
]
+
1
;
}
else
if
(
item4
.
v
id
==
item5
&&
item4
.
alarmTypeText
==
'
接近报警
'
){
}
else
if
(
item4
.
v
ehiIdno
==
item5
&&
item4
.
name
==
'
接近报警
'
){
aa5
[
index5
]
=
aa5
[
index5
]
+
1
;
}
})
...
...
@@ -913,8 +481,8 @@ export default {
that
.
echarts2Fn
();
}
})
}
},
//饼图1
echarts1Fn
(){
...
...
@@ -924,40 +492,17 @@ export default {
tooltip
:
{
trigger
:
'
item
'
},
legend
:
{
top
:
'
1%
'
,
left
:
'
center
'
,
textStyle
:{
color
:
'
white
'
,
fontSize
:
12
,
},
},
color
:[
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,
'
rgb(255,150,195)
'
,
'
rgb(146,119,255)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,],
color
:[
'
rgb(225,226,58)
'
,
'
rgb(44,195,253)
'
,
'
rgb(249,82,43)
'
,
'
rgb(255,150,195)
'
,
'
rgb(146,119,255)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,
'
rgb(84,112,198)
'
,
'
rgb(145,204,117)
'
,
'
rgb(250,200,88)
'
,],
series
:
[
{
type
:
'
pie
'
,
radius
:
[
'
40%
'
,
'
70
%
'
],
radius
:
[
'
65%
'
,
'
75
%
'
],
avoidLabelOverlap
:
false
,
itemStyle
:
{
borderRadius
:
20
,
borderColor
:
'
#fff
'
,
borderColor
:
'
rgba(32,42,67,0.95)
'
,
borderWidth
:
2
,
},
label
:
{
show
:
false
,
position
:
'
center
'
},
emphasis
:
{
label
:
{
show
:
true
,
fontSize
:
'
35
'
,
fontWeight
:
'
bold
'
,
color
:
'
black
'
,
}
},
labelLine
:
{
show
:
false
},
data
:
this
.
echarts1Data
,
}
]
...
...
@@ -1096,7 +641,13 @@ export default {
},
//点击查看
dianjichakan
(
item
){
console
.
log
(
item
);
if
(
item
.
type
==
1
){
this
.
videoSrcShow
=
true
;
this
.
videoSrc
=
item
.
downloadUrl
;
}
else
{
this
.
elimageSrcShow
=
true
;
this
.
elimageSrc
=
item
.
downloadUrl
;
}
},
//转换时间格式(yyyy-mm-dd hh:mm:ss)
currentTime1
(
time
){
...
...
@@ -1147,38 +698,25 @@ export default {
}
})
},
//表格自滚动
mouseoverTable
()
{
clearInterval
(
this
.
tableTimer
)
},
mouseoutTable
()
{
this
.
autoScrollTable
(
false
)
//关闭视频
closeVideo
(){
this
.
videoSrcShow
=
false
;
this
.
videoSrc
=
''
;
},
autoScrollTable
(
init
)
{
this
.
$nextTick
(()
=>
{
const
t
=
50
const
box
=
this
.
$el
.
querySelector
(
'
.el-table__body-wrapper
'
)
const
content
=
this
.
$el
.
querySelector
(
'
.el-table__body
'
)
if
(
init
)
box
.
scrollTop
=
0
this
.
tableTimer
=
setInterval
(()
=>
{
this
.
rollStartTable
(
box
,
content
)
},
t
)
})
},
rollStartTable
(
box
,
content
)
{
if
(
box
.
scrollTop
>=
(
content
.
scrollHeight
-
box
.
offsetHeight
))
{
box
.
scrollTop
=
0
}
else
{
box
.
scrollTop
++
}
//关闭图片
closeElimage
(){
this
.
elimageSrcShow
=
false
;
this
.
elimageSrc
=
''
;
}
},
//销毁
beforeDestroy
()
{
this
.
iframeSrc
=
''
;
this
.
noPtz
=
false
;
clearInterval
(
this
.
tableTimer
);
this
.
tableTimer
=
null
;
this
.
videoSrcShow
=
false
;
this
.
videoSrc
=
''
;
this
.
elimageSrcShow
=
false
;
this
.
elimageSrc
=
''
;
}
};
...
...
@@ -1295,6 +833,7 @@ export default {
.video111
.aiAnalysisRightViews_1_content
{
width
:
100%
;
height
:
31.5vh
;
position
:
relative
;
}
.video111
.aiAnalysisRightViews_1_content_top
{
display
:
flex
;
...
...
@@ -1418,4 +957,60 @@ export default {
font-size
:
14px
;
color
:
#A6F6F9
;
}
.video111
.echarts1_neiquan
{
position
:
absolute
;
height
:
12.5vh
;
width
:
6vw
;
top
:
12.3vh
;
right
:
6.7vw
;
border
:
5px
solid
rgb
(
43
,
178
,
203
);
border-radius
:
50%
;
background-color
:
rgb
(
23
,
52
,
90
);
padding-top
:
3vh
;
box-sizing
:
border-box
;
text-align
:
center
;
font-size
:
20px
;
}
.video111
.videoMengCeng
{
width
:
100%
;
height
:
100%
;
padding
:
2vh
0px
0px
12vw
;
box-sizing
:
border-box
;
background-color
:
rgba
(
0
,
0
,
0
,
0.8
);
z-index
:
50
;
position
:
absolute
;
top
:
0px
;
left
:
0px
;
}
.video111
.closeVideoDiv
{
position
:
absolute
;
right
:
2vw
;
top
:
2vh
;
color
:
white
;
z-index
:
51
;
font-size
:
50px
;
font-weight
:
600
;
cursor
:
pointer
;
}
.video111
.elimageMengCeng
{
width
:
100%
;
height
:
100%
;
padding
:
4vh
0px
0px
10vw
;
box-sizing
:
border-box
;
background-color
:
rgba
(
0
,
0
,
0
,
0.8
);
z-index
:
50
;
position
:
absolute
;
top
:
0px
;
left
:
0px
;
}
.video111
.closeElimageDiv
{
position
:
absolute
;
right
:
2vw
;
top
:
2vh
;
color
:
white
;
z-index
:
51
;
font-size
:
50px
;
font-weight
:
600
;
cursor
:
pointer
;
}
</
style
>
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