From cb8fc3a72eb5462cb52025b2ec390aa9ba4617e5 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 31 七月 2023 15:39:36 +0800
Subject: [PATCH] #

---
 src/components/datav/roseChart.vue |  105 ++++++++++++++++++++++++++--------------------------
 1 files changed, 52 insertions(+), 53 deletions(-)

diff --git a/src/components/datav/roseChart.vue b/src/components/datav/roseChart.vue
index fc72e26..8579fd0 100644
--- a/src/components/datav/roseChart.vue
+++ b/src/components/datav/roseChart.vue
@@ -1,72 +1,71 @@
 <template>
   <div id="rose-chart">
-    <div class="rose-chart-title">绱璁¢噺璧勯噾鍒嗗竷</div>
+    <div class="rose-chart-title">姣忔湀閿�鍞噾棰� - 鎬婚噾棰濓細{{ (sum/10000).toFixed(2) }} 涓囧厓</div>
     <dv-charts :option="option" />
   </div>
 </template>
 
 <script>
+import axios from 'axios'
+
 export default {
   name: 'RoseChart',
-  data () {
+  data() {
     return {
-      option: {}
+      option: {},
+      sum: 1000
     }
   },
   methods: {
-    createData () {
-      const { randomExtend } = this
-
-      this.option = {
-        series: [
-          {
-            type: 'pie',
-            radius: '50%',
-            roseSort: false,
-            data: [
-              { name: '璺熀', value: randomExtend(40, 70) },
-              { name: '浜ゅ畨璁炬柦', value: randomExtend(20, 30) },
-              { name: '鏃ュ父鍏绘姢', value: randomExtend(10, 50) },
-              { name: '妗ラ��', value: randomExtend(5, 20) },
-              { name: '浜ら�氫簨鏁�', value: randomExtend(40, 50) },
-              { name: '璺潰', value: randomExtend(20, 30) },
-              { name: '缁垮寲', value: randomExtend(5, 10) },
-              { name: '璁℃棩宸�', value: randomExtend(20, 35) },
-              { name: '闄ら洩', value: randomExtend(5, 10) }
-            ],
-            insideLabel: {
-              show: false
-            },
-            outsideLabel: {
-              formatter: '{name} {percent}%',
-              labelLineEndLength: 20,
-              style: {
-                fill: '#fff'
+    httpData() {
+      const getApiData = async () => {
+        return await axios.get(this.baseUrl + "data3", { params: {} })
+      }
+      getApiData().then(result => {
+        let list = result.data.data;
+        let sum = 0;
+        for (let i = 0; i < list.length; i++) {
+          let item = list[i];
+          sum += item.sum;
+          item['name'] = item.month + "鏈�";
+          item['value'] = Number(item.sum.toFixed(2));
+          delete item.month;
+          delete item.sum;
+        }
+        this.option = {
+          series: [
+            {
+              type: 'pie',
+              radius: '50%',
+              roseSort: false,
+              data: list,
+              insideLabel: {
+                show: false
               },
-              labelLineStyle: {
-                stroke: '#fff'
-              }
-            },
-            roseType: true
-          }
-        ],
-        color: ['#da2f00', '#fa3600', '#ff4411', '#ff724c', '#541200', '#801b00', '#a02200', '#5d1400', '#b72700']
-      }
-    },
-    randomExtend (minNum, maxNum) {
-      if (arguments.length === 1) {
-        return parseInt(Math.random() * minNum + 1, 10)
-      } else {
-        return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10)
-      }
+              outsideLabel: {
+                formatter: '{name} {percent}%',
+                labelLineEndLength: 20,
+                style: {
+                  fill: '#fff'
+                },
+                labelLineStyle: {
+                  stroke: '#fff'
+                }
+              },
+              roseType: true
+            }
+          ],
+          color: ['#da2f00', '#fa3600', '#ff4411', '#ff724c', '#541200', '#801b00', '#a02200', '#5d1400', '#b72700']
+        }
+        this.sum = sum;
+      })
     }
   },
-  mounted () {
-    const { createData } = this
-
-    createData()
-
-    setInterval(createData, 30000)
+  mounted() {
+    const { httpData } = this
+    httpData()
+   
+    setInterval(httpData, 30000)
   }
 }
 </script>

--
Gitblit v1.9.1