<template>
|
<div class="home">
|
<div class="home_total">
|
<div class="home_total_head">在厂人员总览</div>
|
<div class="home_total_list">
|
<div class="home_total_list_item a">
|
<span>352</span>
|
<span>内部员工</span>
|
</div>
|
<div class="home_total_list_item b">
|
<span>352</span>
|
<span>访客</span>
|
</div>
|
<div class="home_total_list_item c">
|
<span>352</span>
|
<span>劳务人员</span>
|
</div>
|
<div class="home_total_list_item d">
|
<span>352</span>
|
<span>在场车辆</span>
|
</div>
|
<div class="home_total_list_item e">
|
<span>352</span>
|
<span>访客车辆</span>
|
</div>
|
<div class="home_total_list_item f">
|
<span>352</span>
|
<span>劳务车辆</span>
|
</div>
|
<div class="home_total_list_item g">
|
<span>352</span>
|
<span>供应商</span>
|
</div>
|
</div>
|
</div>
|
<div class="home_charts">
|
<div class="home_charts_item">
|
<div class="home_charts_item_label">在厂人员占比</div>
|
<div class="home_charts_item_charts" id="chart1"></div>
|
</div>
|
<div class="home_charts_item">
|
<div class="home_charts_item_label">劳务人员分布总览</div>
|
<div class="home_charts_item_charts" id="chart2"></div>
|
</div>
|
</div>
|
<div class="home_table">
|
<div class="home_table_head">超时预警人员(3)</div>
|
<div class="home_table_box">
|
<el-table
|
:data="list"
|
:header-cell-style="{background: '#dcdde2', color: 'rgb(51, 51, 51)'}"
|
border
|
style="width: 100%">
|
<el-table-column
|
prop="date"
|
label="访客姓名">
|
</el-table-column>
|
<el-table-column
|
prop="name"
|
label="访客电话">
|
</el-table-column>
|
<el-table-column
|
prop="address"
|
label="访客公司">
|
</el-table-column>
|
<el-table-column
|
prop="address"
|
label="公司类型">
|
</el-table-column>
|
<el-table-column
|
prop="address"
|
label="授权到期时间">
|
</el-table-column>
|
<el-table-column
|
prop="address"
|
label="状态">
|
</el-table-column>
|
<el-table-column
|
prop="address"
|
label="处理"
|
width="80">
|
<template slot-scope="scope">
|
<el-button type="text">离场</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<el-pagination
|
style="margin-top: 20px;"
|
@size-change="handleSizeChange"
|
@current-change="handleCurrentChange"
|
:current-page="page"
|
:page-sizes="[100, 200, 300, 400]"
|
:page-size="100"
|
layout="total, sizes, prev, pager, next, jumper"
|
:total="400">
|
</el-pagination>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<script>
|
import * as echarts from 'echarts'
|
export default {
|
name: 'Index',
|
data () {
|
return {
|
list: [],
|
page: 1
|
}
|
},
|
mounted () {
|
this.getcharts1()
|
this.getcharts2()
|
},
|
methods: {
|
handleSizeChange () {
|
|
},
|
handleCurrentChange () {
|
|
},
|
getcharts1 () {
|
const myChart = echarts.init(document.getElementById('chart1'))
|
// 绘制图表
|
myChart.setOption({
|
tooltip: {
|
trigger: 'item'
|
},
|
grid: {
|
bottom: '5%',
|
top: '5%'
|
},
|
legend: {
|
bottom: '0%',
|
left: 'center',
|
icon: 'circle'
|
},
|
series: [
|
{
|
type: 'pie',
|
radius: ['40%', '70%'],
|
label: {
|
formatter: '{b} {d}%'
|
},
|
data: [
|
{ value: 1048, name: '劳务人员' },
|
{ value: 735, name: '内部员工' },
|
{ value: 580, name: '访客' }
|
],
|
itemStyle: {
|
normal: {
|
color: function (colors) {
|
var colorList = [
|
'#fc8251',
|
'#5470c6',
|
'#91cd77'
|
]
|
return colorList[colors.dataIndex]
|
}
|
}
|
},
|
emphasis: {
|
itemStyle: {
|
shadowBlur: 10,
|
shadowOffsetX: 0,
|
shadowColor: 'rgba(0, 0, 0, 0.5)'
|
}
|
}
|
}
|
]
|
})
|
},
|
getcharts2 () {
|
const myChart = echarts.init(document.getElementById('chart2'))
|
myChart.setOption({
|
tooltip: {
|
trigger: 'item'
|
},
|
grid: {
|
bottom: '5%',
|
top: '5%'
|
},
|
xAxis: {
|
max: 'dataMax'
|
},
|
yAxis: {
|
type: 'category',
|
data: ['海康威视', '农业有限公司', '字幕也有限公司', '万达股份有限公司', '阿里巴巴集团有限公司', '腾讯集团有限公司']
|
},
|
series: [
|
{
|
realtimeSort: true,
|
type: 'bar',
|
data: [1, 2, 3, 4, 5, 6],
|
itemStyle: {
|
normal: {
|
color: '#fc8251'
|
}
|
}
|
}
|
]
|
})
|
}
|
}
|
}
|
</script>
|
|
<style scoped lang="scss">
|
@import "@/assets/style/variables.scss";
|
.home {
|
width: 100%;
|
.home_table {
|
width: 100%;
|
padding: 20px;
|
box-sizing: border-box;
|
background: #ffffff;
|
margin-top: 20px;
|
.home_table_head {
|
font-size: 16px;
|
font-weight: 600;
|
color: black;
|
}
|
.home_table_box {
|
width: 100%;
|
margin-top: 15px;
|
}
|
}
|
.home_charts {
|
width: 100%;
|
margin-top: 20px;
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
.home_charts_item {
|
padding: 20px;
|
box-sizing: border-box;
|
flex: 1;
|
display: flex;
|
flex-direction: column;
|
margin-right: 20px;
|
background: #ffffff;
|
.home_charts_item_label {
|
font-size: 16px;
|
font-weight: 600;
|
color: black;
|
}
|
.home_charts_item_charts {
|
width: 100%;
|
height: 300px;
|
}
|
&:last-child {
|
margin: 0 !important;
|
}
|
}
|
}
|
.home_total {
|
width: 100%;
|
background: #ffffff;
|
margin-top: 20px;
|
.home_total_head {
|
width: 100%;
|
font-size: 16px;
|
font-weight: 600;
|
color: black;
|
padding: 10px 20px;
|
box-sizing: border-box;
|
border-bottom: 1px solid #ececec;
|
}
|
.home_total_list {
|
width: 100%;
|
padding: 20px;
|
box-sizing: border-box;
|
display: flex;
|
align-items: center;
|
.a {
|
border-left: 5px solid rgba(129, 211, 248, 1) !important;
|
}
|
.b {
|
border-left: 5px solid rgba(236, 128, 141, 1) !important;
|
}
|
.c {
|
border-left: 5px solid rgba(250, 205, 145, 1) !important;
|
}
|
.d {
|
border-left: 5px solid rgba(245, 154, 35, 1) !important;
|
}
|
.e {
|
border-left: 5px solid rgba(128, 128, 255, 1) !important;
|
}
|
.f {
|
border-left: 5px solid rgba(202, 249, 130, 1) !important;
|
}
|
.g {
|
border-left: 5px solid rgba(194, 128, 255, 1) !important;
|
}
|
.home_total_list_item {
|
flex: 1;
|
display: flex;
|
align-items: center;
|
flex-direction: column;
|
justify-content: center;
|
height: 80px;
|
border-radius: 5px;
|
border: 1px solid #ececec;
|
margin-right: 15px;
|
&:last-child {
|
margin: 0 !important;
|
}
|
span {
|
&:first-child {
|
font-weight: 500;
|
font-size: 24px;
|
color: black;
|
}
|
&:last-child {
|
font-weight: 400;
|
font-size: 14px;
|
color: #666666;
|
margin-top: 2px;
|
}
|
}
|
}
|
}
|
}
|
}
|
</style>
|