<!--
* @Description: 社区基础设施
* @Author: 王晓颖
* @Date: 2020-11-16 10:12:47
-->
<template>
<chart-layout title="社区基础设施" @click="getData">
<div class="block-container">
<div class="block" v-for="(value,key,index) in data" :key="index">
<simple-block :data="value" :color="value.color">
<img :src="value.icon">
</simple-block>
</div>
</div>
<corner1 slot="corner"/>
</chart-layout>
</template>
<script>
import Corner1 from '@/components/corner/Corner1'
import SimpleBlock from '@/components/block/simpleBlock'
import {fetchInfrastructure} from '@/api/community'
export default {
name: 'Infrastructure',
components: {SimpleBlock, Corner1},
data () {
return {
data: {
park: {name: '公园', value: '7', unit: '个', color: '', icon: require('@/assets/images/social/icon-park.png')},
administrativeService: {name: '行政服务中心', value: '1', unit: '个', color: '', icon: require('@/assets/images/social/icon-administrative.png')},
cashBussiness: {name: '金融邮电', value: '43', unit: '个', color: '', icon: require('@/assets/images/social/icon-cash.png')},
hospital: {name: '医疗机构', value: '10', unit: '个', color: '', icon: require('@/assets/images/social/icon-hospital.png')},
school: {name: '学校', value: '32', unit: '个', color: '', icon: require('@/assets/images/social/icon-school.png')},
welfareHouse: {name: '福利院', value: '1', unit: '个', color: '', icon: require('@/assets/images/social/icon-welfare.png')},
culture: {name: '文化体育场所', value: '12', unit: '个', color: '', icon: require('@/assets/images/social/icon-culture.png')},
entertainment: {name: '娱乐场所', value: '34', unit: '个', color: '', icon: require('@/assets/images/social/icon-entertainment.png')},
bussiness: {name: '商业', value: '5', unit: '个', color: '', icon: require('@/assets/images/social/icon-business.png')},
parkLot: {name: '停车场', value: '24', unit: '个', color: '', icon: require('@/assets/images/social/icon-parkLot.png')}
}
}
},
mounted () {
this.getData()
},
methods: {
getData () {
this.getPark()
this.getAdministrative()
this.getCashBussiness()
this.getHospitial()
this.getSchool()
this.getWelfareHouse()
this.getCulture()
this.getEntertainment()
this.getBussiness()
this.getParkLot()
},
// 公园数量
getPark () {
fetchInfrastructure('park').then(response => {
if (response.code === 200) {
this.data.park.value = response.data.total
}
}).catch((e) => {
this.data.park.value = 7
})
},
// 行政服务中心
getAdministrative () {
fetchInfrastructure('administrative').then(response => {
if (response.code === 200) {
this.data.administrativeService.value = response.data.total
}
}).catch((e) => {
this.data.administrativeService.value = 7
})
},
// 金融邮电数量
getCashBussiness () {
fetchInfrastructure('cashBusiness').then(response => {
if (response.code === 200) {
this.data.cashBussiness.value = response.data.total
}
}).catch((e) => {
this.data.cashBussiness.value = 7
})
},
// 医疗机构数量
getHospitial () {
fetchInfrastructure('hospital').then(response => {
if (response.code === 200) {
this.data.hospital.value = response.data.total
}
}).catch((e) => {
this.data.hospital.value = 7
})
},
// 学校数量
getSchool () {
fetchInfrastructure('school').then(response => {
if (response.code === 200) {
this.data.school.value = response.data.total
}
}).catch((e) => {
this.data.school.value = 7
})
},
// 福利院数量
getWelfareHouse () {
fetchInfrastructure('welfareHouse').then(response => {
if (response.code === 200) {
this.data.welfareHouse.value = response.data.total
}
}).catch((e) => {
this.data.welfareHouse.value = 7
})
},
// 文化体育场所数量
getCulture () {
fetchInfrastructure('culture').then(response => {
if (response.code === 200) {
this.data.culture.value = response.data.total
}
}).catch((e) => {
this.data.culture.value = 7
})
},
// 娱乐场所数量
getEntertainment () {
fetchInfrastructure('entertainment').then(response => {
if (response.code === 200) {
this.data.entertainment.value = response.data.total
}
}).catch((e) => {
this.data.entertainment.value = 7
})
},
// 文化体育场所数量
getBussiness () {
fetchInfrastructure('bussiness').then(response => {
if (response.code === 200) {
this.data.bussiness.value = response.data.total
}
}).catch((e) => {
this.data.bussiness.value = 7
})
},
// 停车场数量
getParkLot () {
fetchInfrastructure('parkLot').then(response => {
if (response.code === 200) {
this.data.parkLot.value = response.data.total
}
}).catch((e) => {
this.data.parkLot.value = 7
})
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.block-container{
height: 100%;
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 0.04rem;
padding-top:0.04rem;
.block{
width: 20%;
height: 45%;
}
}
</style>