Newer
Older
CloudBrainNew / src / views / cityConstruction / components / plan / pipeAppendageBar.vue
wangxitong on 29 Apr 2021 1 KB 0429 submit
<!--
 * @Description: 管线附属物数量统计图
 * @Author: 王晓颖
 * @Date: 2020-09-04 15:15:51
 -->
<template>
  <chart-layout title="管线附属物" @click="getData">
    <div style="width: 100%;height:100%;margin:0.05rem">
      <colorful-bar-chart
        :id="options.id"
        :unit="options.unit"
        :height="options.height"
        :xAxisData="options.xAxisData"
        :seriesData="options.seriesData"
      />
    </div>
    <corner1 slot="corner"/>
  </chart-layout>
</template>

<script>
import ColorfulBarChart from '@/components/barChart/colorfulBarChart'
import ChartLayout from '@/components/layout/chartLayout'
import {fetchAppendageCount} from '@/api/cityManage'
export default {
  name: 'pipeAppendageBar',
  components: {ChartLayout, ColorfulBarChart},
  data () {
    return {
      options: {
        id: 'pipe_appendage_count_bar',
        height: '100%',
        width: '100%',
        unit: '个',
        xAxisData: ['雨水', '移动', '污水', '燃气', '路灯', '交通信号', '供电', '给水', '电信'],
        seriesData: [ 1138, 3, 339, 37, 2141, 132, 294, 234, 152 ]
      }
    }
  },
  created () {
    this.getData()
  },
  methods: {
    getData () {
      fetchAppendageCount().then(response => {
        if (response.code === 200) {
          const data = response.data
          this.options.xAxisData = data.map(item => { return item.name })
          this.options.seriesData = data.map(item => { return item.value })
        }
      })
    }
  }
}
</script>

<style rel="stylesheet/scss" lang="scss" scoped>

</style>