|
@@ -1,9 +1,8 @@
|
|
<template>
|
|
<template>
|
|
<div class="_running">
|
|
<div class="_running">
|
|
<HeadlineTag value="实时设备统计"></HeadlineTag>
|
|
<HeadlineTag value="实时设备统计"></HeadlineTag>
|
|
-
|
|
|
|
<div class="_running_mains">
|
|
<div class="_running_mains">
|
|
- <div class="_running_mains_left">
|
|
|
|
|
|
+ <div class="_running_mains_left" id="videoWidth" :style="{ '--heightRun': heightVideo + 'px' }">
|
|
<div class="_running_mains_left_tuan"></div>
|
|
<div class="_running_mains_left_tuan"></div>
|
|
<div class="_running_mains_left_conter">
|
|
<div class="_running_mains_left_conter">
|
|
<div class="_running_mains_left_conter_num">785</div>
|
|
<div class="_running_mains_left_conter_num">785</div>
|
|
@@ -11,16 +10,19 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="_running_mains_right">
|
|
<div class="_running_mains_right">
|
|
- <div class="_running_mains_right_item" v-for="item,index in runningList" :key="index">
|
|
|
|
|
|
+ <div class="_running_mains_right_item" v-for="item, index in runningList" :key="index">
|
|
<div class="_running_mains_right_item_tuan">
|
|
<div class="_running_mains_right_item_tuan">
|
|
- <span class="_running_mains_right_item_tuan_flag" :style="{backgroundColor: item.color}"></span>
|
|
|
|
|
|
+ <span class="_running_mains_right_item_tuan_flag"
|
|
|
|
+ :style="{ backgroundColor: item.color }"></span>
|
|
<el-text class="w-150px mb-2" truncated style="color: #ccc;">
|
|
<el-text class="w-150px mb-2" truncated style="color: #ccc;">
|
|
- {{item.name}}
|
|
|
|
|
|
+ {{ item.name }}
|
|
</el-text>
|
|
</el-text>
|
|
</div>
|
|
</div>
|
|
<div class="_running_mains_right_item__txt">
|
|
<div class="_running_mains_right_item__txt">
|
|
- <span>{{item.state}}</span>
|
|
|
|
- <span :style="{color:item.color,'font-size':'12px','margin-left':'5px'}">{{item.unit}}</span>
|
|
|
|
|
|
+ <span>{{ item.state }}</span>
|
|
|
|
+ <span :style="{ color: item.color, 'font-size': '12px', 'margin-left': '5px' }">
|
|
|
|
+ {{ item.unit }}
|
|
|
|
+ </span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -31,28 +33,37 @@
|
|
<script setup>
|
|
<script setup>
|
|
import { ref } from "vue";
|
|
import { ref } from "vue";
|
|
import HeadlineTag from '@/components/HeadlineTag'
|
|
import HeadlineTag from '@/components/HeadlineTag'
|
|
-import { color } from "echarts";
|
|
|
|
const runningList = ref([
|
|
const runningList = ref([
|
|
- { name:'设备在线', state:'154', color:'#409eff', unit:'台'},
|
|
|
|
- { name:'设备离线', state:'15', color:'#15acaa', unit:'台'},
|
|
|
|
- { name:'存储容量', state:'134', color:'#FFC107', unit:'TB'},
|
|
|
|
- { name:'存储剩余', state:'30', color:'#F44336', unit:'TB'},
|
|
|
|
|
|
+ { name: '设备在线', state: '154', color: '#409eff', unit: '台' },
|
|
|
|
+ { name: '设备离线', state: '15', color: '#15acaa', unit: '台' },
|
|
|
|
+ { name: '存储容量', state: '134', color: '#FFC107', unit: 'TB' },
|
|
|
|
+ { name: '存储剩余', state: '30', color: '#F44336', unit: 'TB' },
|
|
])
|
|
])
|
|
|
|
+const heightVideo = ref(0)
|
|
|
|
+// 生命周期
|
|
|
|
+onMounted(() => {
|
|
|
|
+ var element = document.getElementById("videoWidth");
|
|
|
|
+ var width = element.offsetWidth;
|
|
|
|
+ heightVideo.value = width
|
|
|
|
+});
|
|
</script>
|
|
</script>
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
._running {
|
|
._running {
|
|
display: flex;
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex-direction: column;
|
|
|
|
+
|
|
&_mains {
|
|
&_mains {
|
|
flex: 1;
|
|
flex: 1;
|
|
margin: 30px;
|
|
margin: 30px;
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
|
|
+
|
|
&_left {
|
|
&_left {
|
|
- width: 180px;
|
|
|
|
- height: 180px;
|
|
|
|
|
|
+ width: 40%;
|
|
|
|
+ height: var(--heightRun);
|
|
position: relative;
|
|
position: relative;
|
|
- &_tuan{
|
|
|
|
|
|
+
|
|
|
|
+ &_tuan {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 100%;
|
|
height: 100%;
|
|
background: url("@/assets/images/content_circle.png");
|
|
background: url("@/assets/images/content_circle.png");
|
|
@@ -61,11 +72,12 @@ const runningList = ref([
|
|
background-repeat: no-repeat;
|
|
background-repeat: no-repeat;
|
|
animation: scanning 4s linear infinite;
|
|
animation: scanning 4s linear infinite;
|
|
}
|
|
}
|
|
|
|
+
|
|
&_conter {
|
|
&_conter {
|
|
position: absolute;
|
|
position: absolute;
|
|
left: 0;
|
|
left: 0;
|
|
top: 0;
|
|
top: 0;
|
|
- flex-shrink: 0;
|
|
|
|
|
|
+ flex-shrink: 0;
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
display: flex;
|
|
@@ -73,27 +85,33 @@ const runningList = ref([
|
|
align-items: center;
|
|
align-items: center;
|
|
justify-content: center;
|
|
justify-content: center;
|
|
color: #fff;
|
|
color: #fff;
|
|
|
|
+
|
|
&_num {
|
|
&_num {
|
|
font-size: 18px;
|
|
font-size: 18px;
|
|
}
|
|
}
|
|
|
|
+
|
|
&_text {
|
|
&_text {
|
|
font-size: 12px;
|
|
font-size: 12px;
|
|
- }
|
|
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
&_right {
|
|
&_right {
|
|
- margin-left:10px;
|
|
|
|
- flex: 1;
|
|
|
|
- color: #fff;
|
|
|
|
- &_item{
|
|
|
|
|
|
+ margin-left: 10px;
|
|
|
|
+ flex: 1;
|
|
|
|
+ color: #fff;
|
|
|
|
+
|
|
|
|
+ &_item {
|
|
display: flex;
|
|
display: flex;
|
|
- align-items: center;
|
|
|
|
|
|
+ align-items: center;
|
|
gap: 40px;
|
|
gap: 40px;
|
|
padding: 5px 0;
|
|
padding: 5px 0;
|
|
|
|
+
|
|
&_tuan {
|
|
&_tuan {
|
|
display: flex;
|
|
display: flex;
|
|
- align-items: center;
|
|
|
|
- &_flag{
|
|
|
|
|
|
+ align-items: center;
|
|
|
|
+
|
|
|
|
+ &_flag {
|
|
display: block;
|
|
display: block;
|
|
width: 7px;
|
|
width: 7px;
|
|
height: 7px;
|
|
height: 7px;
|
|
@@ -101,18 +119,20 @@ const runningList = ref([
|
|
margin-right: 10px;
|
|
margin-right: 10px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- &__txt{
|
|
|
|
- font-size:24px;
|
|
|
|
|
|
+
|
|
|
|
+ &__txt {
|
|
|
|
+ font-size: 24px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
@keyframes scanning {
|
|
@keyframes scanning {
|
|
- to {
|
|
|
|
- transform: rotate(1turn);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ to {
|
|
|
|
+ transform: rotate(1turn);
|
|
|
|
+ }
|
|
|
|
+}
|
|
</style>
|
|
</style>
|