管道基础大数据平台系统开发-【前端】-新系統界面
TreeWish
2023-02-28 234409bb4a612c5b69b78b1e844492f0a7122521
src/components/Screen/right.vue
@@ -17,12 +17,12 @@
    <!-- 全球、全国项目 -->
    <div class="rightContainer" v-if="currentDisplay == '项目'">
      <div class="current1">
        <div class="aside-title">站场座数</div>
        <div class="aside-title"></div>
        <!-- <country-dimension-bar ref="barRef"></country-dimension-bar> -->
        <base-bar-chart :project="currentProject"></base-bar-chart>
        <base-bar-chart title="项目个数" :project="currentProject"></base-bar-chart>
      </div>
      <div class="current1">
        <div class="aside-title">阀室座数</div>
        <div class="aside-title">项目饼状图</div>
        <!-- <base-pie-chart :project="currentProject"></base-pie-chart> -->
        <country-dimension-pie
          v-if="currentProject == '全球项目'"
@@ -32,7 +32,10 @@
      </div>
      <div class="current1">
        <div class="aside-title">项目数据使用情况</div>
        <dv-capsule-chart :config="config" style="width: 360px; height: 85%" />
        <dv-capsule-chart
          :config="barConfig"
          style="width: 360px; height: 85%"
        />
      </div>
    </div>
    <!-- 全国、全球管网 -->
@@ -40,7 +43,7 @@
      <div class="current1">
        <div class="aside-title">站场座数</div>
        <!-- <country-dimension-bar ref="barRef"></country-dimension-bar> -->
        <base-bar-chart :project="currentProject"></base-bar-chart>
        <base-bar-chart title="站场座数" :project="currentProject"></base-bar-chart>
      </div>
      <div class="current1">
        <div class="aside-title">阀室座数</div>
@@ -61,11 +64,11 @@
    <div class="rightContainer" v-if="currentDisplay == '工程'">
      <div class="current1">
        <div class="aside-title">数据存储量</div>
        <base-line-chart :project="currentProject"></base-line-chart>
        <base-line-chart title="数据存储量" :project="currentProject" :params="params"></base-line-chart>
      </div>
      <div class="current1">
        <div class="aside-title">数据下载次数</div>
        <base-pie-chart height="90%" :project="currentProject"></base-pie-chart>
        <base-pie-chart height="90%" :project="currentProject" :params="params"></base-pie-chart>
      </div>
      <div class="current1">
        <div class="aside-title">统计不同输送介质管道条数</div>
@@ -75,7 +78,7 @@
            <div>数量</div>
          </div>
        </div>
        <file-format></file-format>
        <file-format :params="params"></file-format>
      </div>
    </div>
@@ -100,7 +103,11 @@
import BasePieChart from "../chart/BasePieChart .vue"
import VisitCount from "../chart/VisitCount.vue"
import { countCountryDimension, countProvinceDimension } from "@/api/screen.js"
import {
  countCountryDimension,
  countProvinceDimension,
  countZhPipeStations,
} from "@/api/screen.js"
export default {
  components: {
@@ -180,9 +187,37 @@
        ],
        lineWidth: 10,
      },
      barConfig: {
        data: [
          {
            name: "南阳",
            value: 167,
          },
          {
            name: "周口",
            value: 123,
          },
          {
            name: "漯河",
            value: 98,
          },
          {
            name: "郑州",
            value: 75,
          },
          {
            name: "西峡",
            value: 66,
          },
        ],
        showValue: true,
      },
      params: {}
    }
  },
  created() {
    this.getZhPipeStations()
  },
  mounted() {
    this.OpenLeftInit()
    this.$bus.$on("changeProject", name => {
@@ -195,7 +230,14 @@
      }
      this.currentProject = name
    })
    this.$bus.$on('changeProjectCode', code => {
      this.params = {
        projectCode: code
      }
    })
  },
  methods: {
    ChangeRight() {
      if (this.leftMessage == "init") {
@@ -236,6 +278,31 @@
    //   this.leftMessage = "projectree"
    //   this.$parent.ChangeWidth("leftTree")
    // },
    async getZhPipeStations() {
      const res = await countZhPipeStations()
      if (res.code == 200) {
        const data = res.result
        this.pieconfig.data = res.result.map(item => {
          return {
            name: item.输送介质,
            value: item.管道数量,
          }
        })
        this.pieconfig = {
          ...this.pieconfig,
        }
        this.config.data = res.result.map(item => {
          return {
            name: item.输送介质,
            value: item.管道数量,
          }
        })
        this.config = {
          ...this.config,
        }
      }
    },
  },
}
</script>