<template>
<div class="dashboard-container" style="background-color: white">
<el-row>
<el-col :span="8">
<el-card shadow="never" class="card">
<energy-num ref="energyNum" />
</el-card>
</el-col>
<el-col :span="8">
<el-card shadow="never" class="card">
<energy-year ref="energyYear" />
</el-card>
</el-col>
<el-col :span="8">
<el-card shadow="never" class="card">
<energy-month ref="energyYear" />
</el-card>
</el-col>
</el-row>
<el-row>
<el-col v-for="(item,index) in buildingList" :key="item.value" :span="6">
<el-card shadow="never" class="card">
<energy-building :ref="'building'+index" :query="item" />
</el-card>
</el-col>
</el-row>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import EnergyNum from './components/energyNum'
import EnergyYear from './components/energyYear'
import EnergyMonth from './components/energyMonth'
import { getDictByCode } from '@/api/system/dict'
import EnergyBuilding from './components/energyBuilding'
export default {
name: 'Dashboard',
components: {
EnergyBuilding,
EnergyMonth,
EnergyYear,
EnergyNum
},
data() {
return {
buildingList: []
}
},
mounted() {
this.fetchOptions()
},
methods: {
fetchOptions() {
getDictByCode('buildingType').then(response => {
if (response.code === 200) {
this.buildingList = response.data
}
})
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.card{
margin: 0px;
}
.dashboard-container{
.el-row{
.el-col{
margin-bottom: 10px;
}
}
}
.dashboard {
&-container {
padding: 10px 20px;
}
&-text {
font-size: 30px;
line-height: 46px;
}
}
</style>