liuxing 1 年間 前
コミット
a570ad3dcd
1 ファイル変更38 行追加16 行削除
  1. 38 16
      app/src/views/Home/components/RiskWarning.vue

+ 38 - 16
app/src/views/Home/components/RiskWarning.vue

@@ -27,6 +27,7 @@ export default {
   watch: {
     riskList: {
       handler(val) {
+        this.chart = null;
         if (val.length > 0) {
           this.$nextTick(() => {
             const chartDom = this.$refs.chart;
@@ -51,29 +52,49 @@ export default {
         });
       });
 
-      // data.forEach((a) => {
+      // 数据补全
+      const category = ["重大风险", "较大风险", "一般风险", "低风险"];
+      category.forEach((p) => {
+        if (data.map((i) => i.name).indexOf(p) < 0) {
+          data.push({
+            name: p,
+            value: 0,
+          });
+        }
+      });
+
+      // 排序
+      // data = data.sort(function (a, b) {
       //   if (a.name === "重大风险") {
-      //     a.value = 1;
+      //     return -3;
       //   } else if (a.name === "较大风险") {
-      //     a.value = 2;
+      //     return -2;
       //   } else if (a.name === "一般风险") {
-      //     a.value = 3;
+      //     return -1;
       //   } else if (a.name === "低风险") {
-      //     a.value = 4;
+      //     return 0;
       //   }
       // });
+      const tmpData = JSON.parse(JSON.stringify(data));
+      data = [];
+      data.push({
+        name: "重大风险",
+        value: tmpData.find((p) => p.name === "重大风险").value,
+      });
 
-      // 排序
-      data = data.sort(function (a, b) {
-        if (a.name === "重大风险") {
-          return -3;
-        } else if (a.name === "较大风险") {
-          return -2;
-        } else if (a.name === "一般风险") {
-          return -1;
-        } else if (a.name === "低风险") {
-          return 0;
-        }
+      data.push({
+        name: "较大风险",
+        value: tmpData.find((p) => p.name === "较大风险").value,
+      });
+
+      data.push({
+        name: "一般风险",
+        value: tmpData.find((p) => p.name === "一般风险").value,
+      });
+
+      data.push({
+        name: "低风险",
+        value: tmpData.find((p) => p.name === "低风险").value,
       });
 
       data.forEach((p) => {
@@ -127,6 +148,7 @@ export default {
         };
       });
 
+      console.log(data);
       const option = {
         backgroundColor: "#0d3059",
         color,