From 234409bb4a612c5b69b78b1e844492f0a7122521 Mon Sep 17 00:00:00 2001
From: TreeWish <1131093754@qq.com>
Date: 星期二, 28 二月 2023 19:15:32 +0800
Subject: [PATCH] 工程&管线接口对接

---
 src/components/chart/BasePieChart .vue |   66 +++++++++++++++-----------------
 1 files changed, 31 insertions(+), 35 deletions(-)

diff --git a/src/components/chart/BasePieChart .vue b/src/components/chart/BasePieChart .vue
index 29d58b9..d9e253d 100644
--- a/src/components/chart/BasePieChart .vue
+++ b/src/components/chart/BasePieChart .vue
@@ -4,7 +4,11 @@
 
 <script>
 import * as echarts from "echarts"
-import { countCountryDimension, countProvinceDimension } from "@/api/screen.js"
+import {
+  countCountryDimension,
+  countProvinceDimension,
+  countProjectStorage,
+} from "@/api/screen.js"
 export default {
   props: {
     width: {
@@ -31,6 +35,10 @@
       type: String,
       default: "鍏ㄥ浗椤圭洰",
     },
+    params: {
+      type: Object,
+      default: () => null,
+    },
   },
   data() {
     return {
@@ -40,32 +48,7 @@
   },
   computed: {
     option() {
-      let echartData = [
-        {
-          value: 2154,
-          name: "鏇查槣甯堣寖澶у",
-        },
-        {
-          value: 3854,
-          name: "娼嶅潑瀛﹂櫌",
-        },
-        {
-          value: 3515,
-          name: "闈掑矝鑱屼笟鎶�鏈闄�",
-        },
-        {
-          value: 3515,
-          name: "娣勫崥甯堣寖楂樼瓑涓撶",
-        },
-        {
-          value: 3854,
-          name: "椴佷笢澶у",
-        },
-        {
-          value: 2154,
-          name: "灞变笢甯堣寖澶у",
-        },
-      ]
+      let echartData = []
       let data = []
       let xAxisData = []
       let yAxisData = []
@@ -73,7 +56,7 @@
       if (this.dataList) {
         data = this.dataList
         echartData = data.map(item => {
-          let name = item.province || item.country
+          let name = item.province || item.country || item.name
           // xAxisData.push(name)
           // yAxisData.push(item.count)
           count += item.count
@@ -183,8 +166,8 @@
               "#18edc9",
               "#6ac5fa",
             ],
-            // minAngle: 15, 
-            // startAngle: 270,
+            minAngle: 15,
+            startAngle: 270,
             label: {
               normal: {
                 formatter: function (params, ticket, callback) {
@@ -209,7 +192,7 @@
             },
             labelLine: {
               normal: {
-                length: 55 * scale,
+                length: 30,
                 length2: 0,
                 lineStyle: {
                   color: "#0b5263",
@@ -233,6 +216,7 @@
     },
     project: {
       deep: true,
+      immediate: true,
       handler(newVal) {
         let requsetFn = null
         switch (newVal) {
@@ -242,17 +226,28 @@
           case "鍏ㄥ浗椤圭洰":
             requsetFn = countProvinceDimension
             break
+          case "鍏ㄧ悆绠$綉鍥�":
+            requsetFn = countProvinceDimension
+            break
+          case "鍏ㄥ浗绠$綉鍥�":
+            requsetFn = countProvinceDimension
+            break
 
           default:
+            requsetFn = countProjectStorage
+
             break
         }
         requsetFn && this.initData(requsetFn)
+
         this.setOptions(this.option)
       },
     },
   },
+  created() {
+    // this.initData()
+  },
   mounted() {
-    this.initData()
     this.initChart()
     if (this.autoResize) {
       window.addEventListener("resize", this.resizeHandler)
@@ -270,7 +265,7 @@
   },
   methods: {
     resizeHandler() {
-      this.chart.resize()
+      this.chart && this.chart.resize()
     },
     initChart() {
       this.chart = echarts.init(this.$refs.chart, "", {
@@ -288,6 +283,7 @@
       if (this.chart) {
         this.chart.setOption(option)
       }
+      
     },
     refresh() {
       this.setOptions(this.option)
@@ -295,8 +291,8 @@
     clearChart() {
       this.chart && this.chart.clear()
     },
-    async initData(requsetFn = countCountryDimension) {
-      const res = await requsetFn()
+    async initData(requsetFn) {
+      const res = await requsetFn(this.params)
       if (res.code == 200) {
         this.dataList = res.result
         console.log("requsetFn", res)

--
Gitblit v1.9.3