<template>
|
<div class="HashCard">
|
<div class="hashrate">
|
<img v-if="type == 0" src="/images/hashrate/polling.png" alt="" />
|
<img v-if="type == 1" src="/images/hashrate/realTime2.png" alt="" />
|
<img v-if="type == 2" src="/images/hashrate/static.png" alt="" />
|
<div class="hashrateContent">
|
<div class="label" v-if="type == 0">轮询算力</div>
|
<div class="label" v-if="type == 1">实时算力</div>
|
<div class="label" v-if="type == 2">数据栈算力</div>
|
<div class="data">
|
<span class="number">{{ hashrate.total }}</span
|
>路
|
</div>
|
</div>
|
</div>
|
<div class="detail">
|
<div class="detailItem">
|
<div class="label"><span class="iconfont"></span>打开分析开关</div>
|
<div class="data">
|
<span class="number">{{ hashrate.valid }}</span
|
>路
|
</div>
|
</div>
|
<div class="detailItem">
|
<div class="label"><span class="iconfont"></span>算法不全</div>
|
<div class="data">
|
<span class="number">{{ hashrate.invalid }}</span
|
>路
|
</div>
|
</div>
|
<div class="detailItem">
|
<div class="label"><span class="iconfont"></span>正在分析</div>
|
<div class="data">
|
<span class="number">{{ hashrate.run }}</span
|
>路
|
</div>
|
</div>
|
<div class="detailItem" @click="dialogVisible = true">
|
<div class="label" title="因未知原因未处理"><span class="iconfont"></span>因未知原因未处理</div>
|
<div class="data">
|
<span class="number">{{ hashrate.noDeal }}</span
|
>路
|
</div>
|
</div>
|
</div>
|
<el-dialog
|
title="异常数据查询"
|
destroy-on-close
|
:visible.sync="dialogVisible"
|
width="40%"
|
:before-close="handleClose"
|
>
|
<!-- <div style="width: 600px">
|
v-if="dialogVisible"
|
</div> -->
|
<el-row :gutter="50">
|
<el-col :span="15">
|
<el-form label-width="140px">
|
<el-form-item label="摄像机名称/通道号">
|
<el-input placeholder="请输出摄像机名称/通道号" v-model="id"></el-input>
|
</el-form-item>
|
</el-form>
|
</el-col>
|
<el-col :span="9"><el-button type="primary">查询</el-button></el-col>
|
</el-row>
|
<el-table :data="tableData" stripe style="width: 100%">
|
<el-table-column prop="date" label="日期" width="180"> </el-table-column>
|
<el-table-column prop="name" label="姓名" width="180"> </el-table-column>
|
<el-table-column prop="address" label="地址"> </el-table-column>
|
</el-table>
|
<div>
|
<el-pagination
|
@current-change="refrash"
|
@size-change="handleSizeChange"
|
:current-page="page"
|
:page-size="size"
|
layout="total, sizes, prev, pager, next, jumper"
|
:page-sizes="[5, 10, 15, 20, 25]"
|
:total="total"
|
background
|
></el-pagination>
|
</div>
|
<!-- <span slot="footer" class="dialog-footer">
|
<el-button @click="dialogVisible = false">取 消</el-button>
|
<el-button type="primary" @click="dialogVisible = false">确 定</el-button>
|
</span> -->
|
</el-dialog>
|
</div>
|
</template>
|
|
<script>
|
export default {
|
props: {
|
type: {},
|
hashrate: {}
|
},
|
data() {
|
return {
|
page: 1,
|
size: 10, //分页相关
|
total: 0, //总数,
|
|
id: "",
|
dialogVisible: false,
|
tableData: [
|
{
|
date: "2016-05-02",
|
name: "王小虎",
|
address: "上海市普陀区金沙江路 1518 弄"
|
},
|
{
|
date: "2016-05-04",
|
name: "王小虎",
|
address: "上海市普陀区金沙江路 1517 弄"
|
},
|
{
|
date: "2016-05-01",
|
name: "王小虎",
|
address: "上海市普陀区金沙江路 1519 弄"
|
},
|
{
|
date: "2016-05-03",
|
name: "王小虎",
|
address: "上海市普陀区金沙江路 1516 弄"
|
}
|
]
|
}
|
},
|
methods: {
|
refrash(page) {
|
this.page = page
|
this.lookUp()
|
},
|
handleSizeChange(size) {
|
this.size = size
|
this.lookUp()
|
},
|
|
handleClose(done) {
|
// this.dialogVisible = false
|
// this.$confirm("确认关闭?")
|
// .then((_) => {
|
done()
|
// })
|
// .catch((_) => {})
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.HashCard {
|
overflow: hidden;
|
height: 156px;
|
background-color: #fff;
|
display: flex;
|
justify-content: space-between;
|
|
.hashrate {
|
margin-left: 20px;
|
margin-right: 34px;
|
margin-top: 42px;
|
display: flex;
|
justify-content: center;
|
|
img {
|
margin-right: 10px;
|
width: 72px;
|
height: 72px;
|
}
|
|
.hashrateContent {
|
.label {
|
margin-bottom: 4px;
|
font-size: 14px;
|
}
|
|
.data {
|
font-size: 16px;
|
font-weight: 700;
|
.number {
|
font-size: 32px;
|
}
|
}
|
}
|
}
|
|
.detail {
|
box-sizing: border-box;
|
padding: 20px 20px 20px 0px;
|
flex: 1;
|
display: flex;
|
flex-wrap: wrap;
|
align-items: center;
|
.detailItem {
|
padding-top: 6px;
|
overflow: hidden;
|
box-sizing: border-box;
|
width: 50%;
|
height: 50%;
|
text-align: center;
|
|
.label {
|
font-size: 12px;
|
color: #666;
|
overflow: hidden;
|
white-space: nowrap;
|
text-overflow: ellipsis;
|
span {
|
vertical-align: -2px;
|
margin-right: 5px;
|
font-size: 18px;
|
}
|
}
|
|
.data {
|
margin-top: 4px;
|
font-size: 12px;
|
font-weight: 700;
|
.number {
|
font-size: 24px;
|
}
|
}
|
|
&:nth-child(1) {
|
border-right: 1px solid #e9ebee;
|
border-bottom: 1px solid #e9ebee;
|
}
|
|
&:nth-child(2) {
|
border-bottom: 1px solid #e9ebee;
|
}
|
|
&:nth-child(3) {
|
border-right: 1px solid #e9ebee;
|
}
|
}
|
}
|
}
|
.el-pagination ::v-deep {
|
margin-top: 30px;
|
|
text-align: center;
|
height: 24px;
|
.el-pagination__sizes {
|
margin-right: 0;
|
}
|
}
|
</style>
|