123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- <template>
- <div class="_running">
- <HeadlineTag value="实时设备统计"></HeadlineTag>
- <div class="_running_mains">
- <div class="_running_mains_left">
- <div class="_running_mains_left_tuan"></div>
- <div class="_running_mains_left_conter">
- <div class="_running_mains_left_conter_num">785</div>
- <div class="_running_mains_left_conter_text">电梯总量</div>
- </div>
- </div>
- <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_tuan">
- <span class="_running_mains_right_item_tuan_flag" :style="{backgroundColor: item.color}"></span>
- <el-text class="w-150px mb-2" truncated style="color: #ccc;">
- {{item.name}}
- </el-text>
- </div>
- <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>
- </div>
- </div>
- </div>
- </div>
- </div>
- </template>
- <script setup>
- import { ref } from "vue";
- import HeadlineTag from '@/components/HeadlineTag'
- import { color } from "echarts";
- const runningList = ref([
- { name:'运行正常', state:'154', color:'#409eff', unit:'台'},
- { name:'运行异常', state:'15', color:'#15acaa', unit:'台'},
- ])
- </script>
- <style lang="scss" scoped>
- ._running {
- display: flex;
- align-items: center;
- flex-direction: column;
- &_mains {
- flex: 1;
- margin: 30px;
- display: flex;
- align-items: center;
- &_left {
- width: 180px;
- height: 180px;
- position: relative;
- flex-shrink: 0;
- &_tuan{
- width: 100%;
- height: 100%;
- background: url("@/assets/images/content_circle.png");
- background-size: 100% 100%;
- background-position: center;
- background-repeat: no-repeat;
- animation: scanning 4s linear infinite;
- }
- &_conter {
- position: absolute;
- left: 0;
- top: 0;
- flex-shrink: 0;
- width: 100%;
- height: 100%;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- color: #fff;
- &_num {
- font-size: 18px;
- }
- &_text {
- font-size: 12px;
- }
- }
- }
- &_right {
- margin-left:10px;
- flex: 1;
- color: #fff;
- &_item{
- display: flex;
- align-items: center;
- gap: 40px;
- padding: 5px 0;
- &_tuan {
- display: flex;
- align-items: center;
- &_flag{
- display: block;
- width: 7px;
- height: 7px;
- border-radius: 50%;
- margin-right: 10px;
- }
- }
- &__txt{
- font-size:24px;
- }
- }
- }
-
- }
- }
- @keyframes scanning {
- to {
- transform: rotate(1turn);
- }
- }
- </style>
|