Browse Source

完善统计数据页面

yellowtaotao 4 năm trước cách đây
mục cha
commit
d3b2d3a3df

+ 142 - 120
package-lock.json

@@ -1297,7 +1297,7 @@
     },
     "@nodelib/fs.stat": {
       "version": "1.1.3",
-      "resolved": "https://registry.nlark.com/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz?cache=0&sync_timestamp=1622792655362&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40nodelib%2Ffs.stat%2Fdownload%2F%40nodelib%2Ffs.stat-1.1.3.tgz",
+      "resolved": "https://registry.nlark.com/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz",
       "integrity": "sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=",
       "dev": true
     },
@@ -1639,7 +1639,7 @@
     },
     "@vue/babel-preset-app": {
       "version": "4.5.13",
-      "resolved": "https://registry.nlark.com/@vue/babel-preset-app/download/@vue/babel-preset-app-4.5.13.tgz",
+      "resolved": "https://registry.nlark.com/@vue/babel-preset-app/download/@vue/babel-preset-app-4.5.13.tgz?cache=0&sync_timestamp=1620981723230&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fbabel-preset-app%2Fdownload%2F%40vue%2Fbabel-preset-app-4.5.13.tgz",
       "integrity": "sha1-y0dTIeTHP38RDawppIwqnLgK/rY=",
       "dev": true,
       "requires": {
@@ -1791,7 +1791,7 @@
     },
     "@vue/cli-plugin-eslint": {
       "version": "4.5.13",
-      "resolved": "https://registry.nlark.com/@vue/cli-plugin-eslint/download/@vue/cli-plugin-eslint-4.5.13.tgz?cache=0&sync_timestamp=1623215859183&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcli-plugin-eslint%2Fdownload%2F%40vue%2Fcli-plugin-eslint-4.5.13.tgz",
+      "resolved": "https://registry.nlark.com/@vue/cli-plugin-eslint/download/@vue/cli-plugin-eslint-4.5.13.tgz",
       "integrity": "sha1-i68i0NltdnIMdQZka5b09iwFvfo=",
       "dev": true,
       "requires": {
@@ -1820,7 +1820,7 @@
     },
     "@vue/cli-service": {
       "version": "4.5.13",
-      "resolved": "https://registry.nlark.com/@vue/cli-service/download/@vue/cli-service-4.5.13.tgz",
+      "resolved": "https://registry.nlark.com/@vue/cli-service/download/@vue/cli-service-4.5.13.tgz?cache=0&sync_timestamp=1620981723722&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcli-service%2Fdownload%2F%40vue%2Fcli-service-4.5.13.tgz",
       "integrity": "sha1-oJ5oSoAWhLbiTlQUrTBlCXDuye0=",
       "dev": true,
       "requires": {
@@ -1884,16 +1884,54 @@
       "dependencies": {
         "acorn": {
           "version": "7.4.1",
-          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz",
+          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1620134156200&other_urls=https%3A%2F%2Fregistry.nlark.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz",
           "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
           "dev": true
         },
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995547052&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
+          "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
         "camelcase": {
           "version": "5.3.1",
           "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz?cache=0&sync_timestamp=1603921882890&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-5.3.1.tgz",
           "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
           "dev": true
         },
+        "chalk": {
+          "version": "4.1.1",
+          "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz?cache=0&sync_timestamp=1618995354302&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.1.tgz",
+          "integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
+          "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
+          "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
+          "dev": true,
+          "optional": true
+        },
         "css-loader": {
           "version": "3.6.0",
           "resolved": "https://registry.nlark.com/css-loader/download/css-loader-3.6.0.tgz?cache=0&sync_timestamp=1621865230592&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcss-loader%2Fdownload%2Fcss-loader-3.6.0.tgz",
@@ -1924,6 +1962,13 @@
             "ms": "2.1.2"
           }
         },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-flag%2Fdownload%2Fhas-flag-4.0.0.tgz",
+          "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
+          "dev": true,
+          "optional": true
+        },
         "json5": {
           "version": "1.0.1",
           "resolved": "https://registry.nlark.com/json5/download/json5-1.0.1.tgz",
@@ -1964,12 +2009,58 @@
           "requires": {
             "minipass": "^3.1.1"
           }
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1622293670728&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
+          "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        },
+        "vue-loader-v16": {
+          "version": "npm:vue-loader@16.2.0",
+          "resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.2.0.tgz?cache=0&sync_timestamp=1620717857145&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-loader%2Fdownload%2Fvue-loader-16.2.0.tgz",
+          "integrity": "sha1-BGpTMI3Ufljv4g3ewe3sAnzjtG4=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "chalk": "^4.1.0",
+            "hash-sum": "^2.0.0",
+            "loader-utils": "^2.0.0"
+          },
+          "dependencies": {
+            "json5": {
+              "version": "2.2.0",
+              "resolved": "https://registry.npm.taobao.org/json5/download/json5-2.2.0.tgz?cache=0&sync_timestamp=1612146875530&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson5%2Fdownload%2Fjson5-2.2.0.tgz",
+              "integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
+              "dev": true,
+              "optional": true,
+              "requires": {
+                "minimist": "^1.2.5"
+              }
+            },
+            "loader-utils": {
+              "version": "2.0.0",
+              "resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
+              "integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
+              "dev": true,
+              "optional": true,
+              "requires": {
+                "big.js": "^5.2.2",
+                "emojis-list": "^3.0.0",
+                "json5": "^2.1.2"
+              }
+            }
+          }
         }
       }
     },
     "@vue/cli-shared-utils": {
       "version": "4.5.13",
-      "resolved": "https://registry.nlark.com/@vue/cli-shared-utils/download/@vue/cli-shared-utils-4.5.13.tgz",
+      "resolved": "https://registry.nlark.com/@vue/cli-shared-utils/download/@vue/cli-shared-utils-4.5.13.tgz?cache=0&sync_timestamp=1620981722781&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcli-shared-utils%2Fdownload%2F%40vue%2Fcli-shared-utils-4.5.13.tgz",
       "integrity": "sha1-rNQPMbR5DxY0KSvapfypXcHg/1A=",
       "dev": true,
       "requires": {
@@ -2246,7 +2337,7 @@
     },
     "acorn": {
       "version": "6.4.2",
-      "resolved": "https://registry.nlark.com/acorn/download/acorn-6.4.2.tgz",
+      "resolved": "https://registry.nlark.com/acorn/download/acorn-6.4.2.tgz?cache=0&sync_timestamp=1620134156200&other_urls=https%3A%2F%2Fregistry.nlark.com%2Facorn%2Fdownload%2Facorn-6.4.2.tgz",
       "integrity": "sha1-NYZv1xBSjpLeEM8GAWSY5H454eY=",
       "dev": true
     },
@@ -2278,7 +2369,7 @@
     },
     "ajv": {
       "version": "6.12.6",
-      "resolved": "https://registry.nlark.com/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1622991619843&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fajv%2Fdownload%2Fajv-6.12.6.tgz",
+      "resolved": "https://registry.nlark.com/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1621517642931&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fajv%2Fdownload%2Fajv-6.12.6.tgz",
       "integrity": "sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=",
       "requires": {
         "fast-deep-equal": "^3.1.1",
@@ -2321,7 +2412,7 @@
       "dependencies": {
         "type-fest": {
           "version": "0.21.3",
-          "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.21.3.tgz?cache=0&sync_timestamp=1622543391721&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.21.3.tgz",
+          "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.21.3.tgz?cache=0&sync_timestamp=1621402383646&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.21.3.tgz",
           "integrity": "sha1-0mCiSwGYQ24TP6JqUkptZfo7Ljc=",
           "dev": true
         }
@@ -2350,7 +2441,7 @@
     },
     "ant-design-vue": {
       "version": "1.7.5",
-      "resolved": "https://registry.nlark.com/ant-design-vue/download/ant-design-vue-1.7.5.tgz?cache=0&sync_timestamp=1623136656408&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fant-design-vue%2Fdownload%2Fant-design-vue-1.7.5.tgz",
+      "resolved": "https://registry.nlark.com/ant-design-vue/download/ant-design-vue-1.7.5.tgz",
       "integrity": "sha1-5+0EyzWK3Fa+AsdFPS2wJtLEBeM=",
       "requires": {
         "@ant-design/icons": "^2.1.1",
@@ -2519,7 +2610,7 @@
         },
         "util": {
           "version": "0.10.3",
-          "resolved": "https://registry.nlark.com/util/download/util-0.10.3.tgz?cache=0&sync_timestamp=1622213047493&other_urls=https%3A%2F%2Fregistry.nlark.com%2Futil%2Fdownload%2Futil-0.10.3.tgz",
+          "resolved": "https://registry.npm.taobao.org/util/download/util-0.10.3.tgz",
           "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
           "dev": true,
           "requires": {
@@ -2586,7 +2677,7 @@
     },
     "autoprefixer": {
       "version": "9.8.6",
-      "resolved": "https://registry.nlark.com/autoprefixer/download/autoprefixer-9.8.6.tgz",
+      "resolved": "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.8.6.tgz",
       "integrity": "sha1-O3NZTKG/kmYyDFrPFYjXTep0IQ8=",
       "dev": true,
       "requires": {
@@ -2613,7 +2704,7 @@
     },
     "axios": {
       "version": "0.21.1",
-      "resolved": "https://registry.nlark.com/axios/download/axios-0.21.1.tgz?cache=0&sync_timestamp=1618847188301&other_urls=https%3A%2F%2Fregistry.nlark.com%2Faxios%2Fdownload%2Faxios-0.21.1.tgz",
+      "resolved": "https://registry.npm.taobao.org/axios/download/axios-0.21.1.tgz?cache=0&sync_timestamp=1608609188013&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faxios%2Fdownload%2Faxios-0.21.1.tgz",
       "integrity": "sha1-IlY0gZYvTWvemnbVFu8OXTwJsrg=",
       "requires": {
         "follow-redirects": "^1.10.0"
@@ -2745,7 +2836,7 @@
       "dependencies": {
         "core-js": {
           "version": "2.6.12",
-          "resolved": "https://registry.nlark.com/core-js/download/core-js-2.6.12.tgz?cache=0&sync_timestamp=1622879421799&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcore-js%2Fdownload%2Fcore-js-2.6.12.tgz",
+          "resolved": "https://registry.nlark.com/core-js/download/core-js-2.6.12.tgz?cache=0&sync_timestamp=1621970991239&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcore-js%2Fdownload%2Fcore-js-2.6.12.tgz",
           "integrity": "sha1-2TM9+nsGXjR8xWgiGdb2kIWcwuw="
         }
       }
@@ -3399,7 +3490,7 @@
     },
     "ci-info": {
       "version": "1.6.0",
-      "resolved": "https://registry.nlark.com/ci-info/download/ci-info-1.6.0.tgz?cache=0&sync_timestamp=1622180363085&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fci-info%2Fdownload%2Fci-info-1.6.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/ci-info/download/ci-info-1.6.0.tgz",
       "integrity": "sha1-LKINu5zrMtRSSmgzAzE/AwSx5Jc=",
       "dev": true
     },
@@ -3515,7 +3606,7 @@
         },
         "supports-color": {
           "version": "7.2.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1618561008172&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
           "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
           "dev": true,
           "requires": {
@@ -4284,7 +4375,7 @@
     },
     "css-select": {
       "version": "2.1.0",
-      "resolved": "https://registry.nlark.com/css-select/download/css-select-2.1.0.tgz?cache=0&sync_timestamp=1622994276976&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcss-select%2Fdownload%2Fcss-select-2.1.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/css-select/download/css-select-2.1.0.tgz?cache=0&sync_timestamp=1618566178339&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-select%2Fdownload%2Fcss-select-2.1.0.tgz",
       "integrity": "sha1-ajRlM1ZjWTSoG6ymjQJVQyEF2+8=",
       "dev": true,
       "requires": {
@@ -4312,7 +4403,7 @@
     },
     "css-what": {
       "version": "3.4.2",
-      "resolved": "https://registry.nlark.com/css-what/download/css-what-3.4.2.tgz",
+      "resolved": "https://registry.npm.taobao.org/css-what/download/css-what-3.4.2.tgz",
       "integrity": "sha1-6nAm/LAXd+295SEk4h8yfnrpUOQ=",
       "dev": true
     },
@@ -4324,7 +4415,7 @@
     },
     "cssnano": {
       "version": "4.1.11",
-      "resolved": "https://registry.nlark.com/cssnano/download/cssnano-4.1.11.tgz",
+      "resolved": "https://registry.nlark.com/cssnano/download/cssnano-4.1.11.tgz?cache=0&sync_timestamp=1621620031632&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcssnano%2Fdownload%2Fcssnano-4.1.11.tgz",
       "integrity": "sha1-x7X1uB2iacsf2YLLlgwSAJEMmpk=",
       "dev": true,
       "requires": {
@@ -4336,7 +4427,7 @@
     },
     "cssnano-preset-default": {
       "version": "4.0.8",
-      "resolved": "https://registry.nlark.com/cssnano-preset-default/download/cssnano-preset-default-4.0.8.tgz",
+      "resolved": "https://registry.nlark.com/cssnano-preset-default/download/cssnano-preset-default-4.0.8.tgz?cache=0&sync_timestamp=1621620031436&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcssnano-preset-default%2Fdownload%2Fcssnano-preset-default-4.0.8.tgz",
       "integrity": "sha1-kgYisfwelaNOiDggPxOXpQTy0/8=",
       "dev": true,
       "requires": {
@@ -4420,7 +4511,7 @@
         },
         "mdn-data": {
           "version": "2.0.14",
-          "resolved": "https://registry.nlark.com/mdn-data/download/mdn-data-2.0.14.tgz",
+          "resolved": "https://registry.nlark.com/mdn-data/download/mdn-data-2.0.14.tgz?cache=0&sync_timestamp=1619049042656&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.14.tgz",
           "integrity": "sha1-cRP8QoGRfWPOKbQ0RvcB5owlulA=",
           "dev": true
         }
@@ -4514,7 +4605,7 @@
         },
         "execa": {
           "version": "3.4.0",
-          "resolved": "https://registry.nlark.com/execa/download/execa-3.4.0.tgz?cache=0&sync_timestamp=1622825484602&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexeca%2Fdownload%2Fexeca-3.4.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/execa/download/execa-3.4.0.tgz?cache=0&sync_timestamp=1606971027153&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexeca%2Fdownload%2Fexeca-3.4.0.tgz",
           "integrity": "sha1-wI7UVQ72XYWPrCaf/IVyRG8364k=",
           "dev": true,
           "requires": {
@@ -4889,7 +4980,7 @@
     },
     "domutils": {
       "version": "1.7.0",
-      "resolved": "https://registry.nlark.com/domutils/download/domutils-1.7.0.tgz?cache=0&sync_timestamp=1622995111565&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomutils%2Fdownload%2Fdomutils-1.7.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz",
       "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=",
       "dev": true,
       "requires": {
@@ -5150,7 +5241,7 @@
     },
     "eslint": {
       "version": "6.8.0",
-      "resolved": "https://registry.nlark.com/eslint/download/eslint-6.8.0.tgz?cache=0&sync_timestamp=1622846610677&other_urls=https%3A%2F%2Fregistry.nlark.com%2Feslint%2Fdownload%2Feslint-6.8.0.tgz",
+      "resolved": "https://registry.nlark.com/eslint/download/eslint-6.8.0.tgz?cache=0&sync_timestamp=1621646990959&other_urls=https%3A%2F%2Fregistry.nlark.com%2Feslint%2Fdownload%2Feslint-6.8.0.tgz",
       "integrity": "sha1-YiYtZylzn5J1cjgkMC+yJ8jJP/s=",
       "dev": true,
       "requires": {
@@ -5214,7 +5305,7 @@
         },
         "globals": {
           "version": "12.4.0",
-          "resolved": "https://registry.nlark.com/globals/download/globals-12.4.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/globals/download/globals-12.4.0.tgz",
           "integrity": "sha1-oYgTV2pBsAokqX5/gVkYwuGZJfg=",
           "dev": true,
           "requires": {
@@ -5260,7 +5351,7 @@
         },
         "type-fest": {
           "version": "0.8.1",
-          "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.8.1.tgz?cache=0&sync_timestamp=1622543391721&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz",
+          "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.8.1.tgz?cache=0&sync_timestamp=1621402383646&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz",
           "integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=",
           "dev": true
         }
@@ -5303,7 +5394,7 @@
     },
     "eslint-plugin-vue": {
       "version": "6.2.2",
-      "resolved": "https://registry.nlark.com/eslint-plugin-vue/download/eslint-plugin-vue-6.2.2.tgz",
+      "resolved": "https://registry.npm.taobao.org/eslint-plugin-vue/download/eslint-plugin-vue-6.2.2.tgz",
       "integrity": "sha1-J/7NmjokeJsPER7N1UCp5WGY4P4=",
       "dev": true,
       "requires": {
@@ -5350,7 +5441,7 @@
       "dependencies": {
         "acorn": {
           "version": "7.4.1",
-          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz",
+          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1620134156200&other_urls=https%3A%2F%2Fregistry.nlark.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz",
           "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
           "dev": true
         }
@@ -5453,7 +5544,7 @@
     },
     "execa": {
       "version": "1.0.0",
-      "resolved": "https://registry.nlark.com/execa/download/execa-1.0.0.tgz?cache=0&sync_timestamp=1622825484602&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexeca%2Fdownload%2Fexeca-1.0.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz?cache=0&sync_timestamp=1606971027153&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexeca%2Fdownload%2Fexeca-1.0.0.tgz",
       "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=",
       "dev": true,
       "requires": {
@@ -6133,7 +6224,7 @@
     },
     "globals": {
       "version": "11.12.0",
-      "resolved": "https://registry.nlark.com/globals/download/globals-11.12.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz",
       "integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=",
       "dev": true
     },
@@ -6681,7 +6772,7 @@
     },
     "import-from": {
       "version": "2.1.0",
-      "resolved": "https://registry.nlark.com/import-from/download/import-from-2.1.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/import-from/download/import-from-2.1.0.tgz",
       "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=",
       "dev": true,
       "requires": {
@@ -6874,7 +6965,7 @@
         },
         "supports-color": {
           "version": "7.2.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1618561008172&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
           "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
           "dev": true,
           "requires": {
@@ -7719,7 +7810,7 @@
     },
     "mdn-data": {
       "version": "2.0.4",
-      "resolved": "https://registry.nlark.com/mdn-data/download/mdn-data-2.0.4.tgz",
+      "resolved": "https://registry.nlark.com/mdn-data/download/mdn-data-2.0.4.tgz?cache=0&sync_timestamp=1619049042656&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.4.tgz",
       "integrity": "sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs=",
       "dev": true
     },
@@ -8307,7 +8398,7 @@
     },
     "object-hash": {
       "version": "1.3.1",
-      "resolved": "https://registry.nlark.com/object-hash/download/object-hash-1.3.1.tgz",
+      "resolved": "https://registry.npm.taobao.org/object-hash/download/object-hash-1.3.1.tgz?cache=0&sync_timestamp=1608921025476&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-hash%2Fdownload%2Fobject-hash-1.3.1.tgz",
       "integrity": "sha1-/eRSCYqVHLFF8Dm7fUVUSd3BJt8=",
       "dev": true
     },
@@ -8815,7 +8906,7 @@
     },
     "postcss": {
       "version": "7.0.35",
-      "resolved": "https://registry.nlark.com/postcss/download/postcss-7.0.35.tgz",
+      "resolved": "https://registry.nlark.com/postcss/download/postcss-7.0.35.tgz?cache=0&sync_timestamp=1621568858981&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss%2Fdownload%2Fpostcss-7.0.35.tgz",
       "integrity": "sha1-0r4AuZj38hHYonaXQHny6SuXDiQ=",
       "dev": true,
       "requires": {
@@ -8826,7 +8917,7 @@
       "dependencies": {
         "supports-color": {
           "version": "6.1.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-6.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1618561008172&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
           "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=",
           "dev": true,
           "requires": {
@@ -8848,7 +8939,7 @@
     },
     "postcss-colormin": {
       "version": "4.0.3",
-      "resolved": "https://registry.nlark.com/postcss-colormin/download/postcss-colormin-4.0.3.tgz",
+      "resolved": "https://registry.nlark.com/postcss-colormin/download/postcss-colormin-4.0.3.tgz?cache=0&sync_timestamp=1621620031272&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-colormin%2Fdownload%2Fpostcss-colormin-4.0.3.tgz",
       "integrity": "sha1-rgYLzpPteUrHEmTwgTLVUJVr04E=",
       "dev": true,
       "requires": {
@@ -8998,7 +9089,7 @@
     },
     "postcss-merge-rules": {
       "version": "4.0.3",
-      "resolved": "https://registry.nlark.com/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz",
+      "resolved": "https://registry.nlark.com/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz?cache=0&sync_timestamp=1621449818973&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-merge-rules%2Fdownload%2Fpostcss-merge-rules-4.0.3.tgz",
       "integrity": "sha1-NivqT/Wh+Y5AdacTxsslrv75plA=",
       "dev": true,
       "requires": {
@@ -9423,14 +9514,14 @@
     },
     "prettier": {
       "version": "1.19.1",
-      "resolved": "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1622888610164&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz",
+      "resolved": "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1620594183343&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz",
       "integrity": "sha1-99f1/4qc2HKnvkyhQglZVqYHl8s=",
       "dev": true,
       "optional": true
     },
     "pretty-error": {
       "version": "2.1.2",
-      "resolved": "https://registry.nlark.com/pretty-error/download/pretty-error-2.1.2.tgz",
+      "resolved": "https://registry.npm.taobao.org/pretty-error/download/pretty-error-2.1.2.tgz",
       "integrity": "sha1-von4LYGxyG7I/fvDhQRYgnJ/k7Y=",
       "dev": true,
       "requires": {
@@ -10915,7 +11006,7 @@
     },
     "supports-color": {
       "version": "5.5.0",
-      "resolved": "https://registry.nlark.com/supports-color/download/supports-color-5.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1618561008172&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz",
       "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=",
       "dev": true,
       "requires": {
@@ -11014,7 +11105,7 @@
     },
     "terser-webpack-plugin": {
       "version": "1.4.5",
-      "resolved": "https://registry.nlark.com/terser-webpack-plugin/download/terser-webpack-plugin-1.4.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.5.tgz",
+      "resolved": "https://registry.nlark.com/terser-webpack-plugin/download/terser-webpack-plugin-1.4.5.tgz?cache=0&sync_timestamp=1620831017649&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.5.tgz",
       "integrity": "sha1-oheu+uozDnNP+sthIOwfoxLWBAs=",
       "dev": true,
       "requires": {
@@ -11334,7 +11425,7 @@
     },
     "type-fest": {
       "version": "0.6.0",
-      "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.6.0.tgz?cache=0&sync_timestamp=1622543391721&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.6.0.tgz",
+      "resolved": "https://registry.nlark.com/type-fest/download/type-fest-0.6.0.tgz?cache=0&sync_timestamp=1621402383646&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.6.0.tgz",
       "integrity": "sha1-jSojcNPfiG61yQraHFv2GIrPg4s=",
       "dev": true
     },
@@ -11356,7 +11447,7 @@
     },
     "uglify-js": {
       "version": "3.4.10",
-      "resolved": "https://registry.nlark.com/uglify-js/download/uglify-js-3.4.10.tgz",
+      "resolved": "https://registry.nlark.com/uglify-js/download/uglify-js-3.4.10.tgz?cache=0&sync_timestamp=1621369441167&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fuglify-js%2Fdownload%2Fuglify-js-3.4.10.tgz",
       "integrity": "sha1-mtlWPY6zrN+404WX0q8dgV9qdV8=",
       "dev": true,
       "requires": {
@@ -11613,7 +11704,7 @@
     },
     "util": {
       "version": "0.11.1",
-      "resolved": "https://registry.nlark.com/util/download/util-0.11.1.tgz?cache=0&sync_timestamp=1622213047493&other_urls=https%3A%2F%2Fregistry.nlark.com%2Futil%2Fdownload%2Futil-0.11.1.tgz",
+      "resolved": "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz",
       "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=",
       "dev": true,
       "requires": {
@@ -11660,7 +11751,7 @@
     },
     "uuid": {
       "version": "3.4.0",
-      "resolved": "https://registry.nlark.com/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1622213185460&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz",
+      "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1607460081656&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz",
       "integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=",
       "dev": true
     },
@@ -11802,75 +11893,6 @@
         }
       }
     },
-    "vue-loader-v16": {
-      "version": "npm:vue-loader@16.2.0",
-      "resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.2.0.tgz?cache=0&sync_timestamp=1620717857145&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-loader%2Fdownload%2Fvue-loader-16.2.0.tgz",
-      "integrity": "sha1-BGpTMI3Ufljv4g3ewe3sAnzjtG4=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "chalk": "^4.1.0",
-        "hash-sum": "^2.0.0",
-        "loader-utils": "^2.0.0"
-      },
-      "dependencies": {
-        "ansi-styles": {
-          "version": "4.3.0",
-          "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995547052&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
-          "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-convert": "^2.0.1"
-          }
-        },
-        "chalk": {
-          "version": "4.1.1",
-          "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz?cache=0&sync_timestamp=1618995354302&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.1.tgz",
-          "integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
-          "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "color-name": {
-          "version": "1.1.4",
-          "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
-          "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
-          "dev": true,
-          "optional": true
-        },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-flag%2Fdownload%2Fhas-flag-4.0.0.tgz",
-          "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
-          "dev": true,
-          "optional": true
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
-          "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        }
-      }
-    },
     "vue-ref": {
       "version": "2.0.0",
       "resolved": "https://registry.npm.taobao.org/vue-ref/download/vue-ref-2.0.0.tgz",
@@ -12108,7 +12130,7 @@
     },
     "webpack": {
       "version": "4.46.0",
-      "resolved": "https://registry.nlark.com/webpack/download/webpack-4.46.0.tgz?cache=0&sync_timestamp=1622151377755&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwebpack%2Fdownload%2Fwebpack-4.46.0.tgz",
+      "resolved": "https://registry.nlark.com/webpack/download/webpack-4.46.0.tgz?cache=0&sync_timestamp=1621407470605&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwebpack%2Fdownload%2Fwebpack-4.46.0.tgz",
       "integrity": "sha1-v5tEBOogoHNgXgoBHRiNd8tq1UI=",
       "dev": true,
       "requires": {
@@ -12193,7 +12215,7 @@
       "dependencies": {
         "acorn": {
           "version": "7.4.1",
-          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz",
+          "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1620134156200&other_urls=https%3A%2F%2Fregistry.nlark.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz",
           "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
           "dev": true
         }
@@ -12553,7 +12575,7 @@
         },
         "supports-color": {
           "version": "6.1.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-6.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1618561008172&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
           "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=",
           "dev": true,
           "requires": {
@@ -12639,7 +12661,7 @@
     },
     "webpack-sources": {
       "version": "1.4.3",
-      "resolved": "https://registry.nlark.com/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&sync_timestamp=1622110410694&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz",
+      "resolved": "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&sync_timestamp=1603965314165&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz",
       "integrity": "sha1-7t2OwLko+/HL/plOItLYkPMwqTM=",
       "dev": true,
       "requires": {
@@ -12851,7 +12873,7 @@
         },
         "execa": {
           "version": "0.8.0",
-          "resolved": "https://registry.nlark.com/execa/download/execa-0.8.0.tgz?cache=0&sync_timestamp=1622825484602&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexeca%2Fdownload%2Fexeca-0.8.0.tgz",
+          "resolved": "https://registry.npm.taobao.org/execa/download/execa-0.8.0.tgz?cache=0&sync_timestamp=1606971027153&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexeca%2Fdownload%2Fexeca-0.8.0.tgz",
           "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=",
           "dev": true,
           "requires": {

+ 0 - 11
src/components/echarts/EchartsBar.vue

@@ -69,22 +69,11 @@ export default {
         xAxis: {
           type: 'category',
           data: barData.xAxis.data,
-          // axisLabel: {
-          //   inside: true,
-          //   textStyle: {
-          //     color: '#fff',
-          //   },
-          // },
         },
         yAxis: {
           type: 'value',
           // min: barData.yAxis.min,
           // max: barData.yAxis.max,
-          // axisLabel: {
-          //   textStyle: {
-          //     color: '#1890FF',
-          //   },
-          // },
         },
         series: [
           {

+ 120 - 0
src/components/echarts/EchartsDoughnut.vue

@@ -0,0 +1,120 @@
+<template>
+  <div ref="myChartPie" :style="{ width: width, height: height }"></div>
+</template>
+
+<script>
+import { formatNumberToDollar } from '@/filters';
+// 引入基本模板
+let echarts = require('echarts/lib/echarts');
+// 引入柱状图组件
+require('echarts/lib/chart/bar');
+// 引入提示框和title组件
+require('echarts/lib/component/tooltip');
+require('echarts/lib/component/title');
+export default {
+  props: {
+    // 数据
+    pieData: {
+      type: Object,
+      default() {
+        return {
+          title: '', // 标题
+          data: [], // 数据, { name, value }
+          count: 0, // 总数
+        };
+      },
+    },
+    // 宽度
+    width: {
+      type: String,
+      default: '100%',
+    },
+    // 高度
+    height: {
+      type: String,
+      default: '400px',
+    },
+  },
+  components: {},
+  data() {
+    return {};
+  },
+  created() {},
+  mounted() {},
+  beforeDestroy() {},
+  watch: {},
+  computed: {},
+  methods: {
+    // 初始化数据
+    initDataFun(pieData) {
+      // 基于准备好的dom,初始化echarts实例
+      let myChart = echarts.init(this.$refs.myChartPie);
+      let data = genData(pieData.data);
+      // 绘制图表
+      myChart.setOption({
+        tooltip: {
+          trigger: 'item',
+          formatter: '{a} <br/>{b} : {c} ({d}%)',
+        }, // 移入的提示
+        legend: {
+          orient: 'vertical',
+          icon: 'circle',
+          radius: '100%',
+          left: 10,
+          top: 10,
+          bottom: 10,
+          data: data.legendData,
+          selected: data.selected,
+        }, // 颜色标识标签
+        series: [
+          {
+            name: pieData.seriesLabel,
+            type: 'pie',
+            radius: ['35%', '60%'], // 第一项是内半径,第二项是外半径,内半径为0就是真的饼,不是环形
+            avoidLabelOverlap: false,
+            data: data.seriesData,
+            label: {
+              show: true,
+              position: 'center',
+              formatter: `  ${pieData.title}\r\n ${formatNumberToDollar(
+                pieData.count
+              )}`,
+              textStyle: {
+                fontSize: '20',
+                fontWeight: 'bold',
+                color: 'rgba(0, 0, 0, 0.65)',
+              },
+            },
+            emphasis: {
+              itemStyle: {
+                shadowBlur: 10,
+                shadowOffsetX: 0,
+                shadowColor: 'rgba(0, 0, 0, 0.5)',
+              },
+            },
+          },
+        ],
+      });
+      function genData(dataList) {
+        let legendData = [];
+        let seriesData = [];
+        dataList.forEach((item) => {
+          legendData.push(item.name);
+          seriesData.push({
+            name: item.name,
+            value: item.value,
+          });
+        });
+        return {
+          legendData,
+          seriesData,
+        };
+      }
+    },
+  },
+};
+</script>
+
+<style lang="less"></style>
+
+<style lang="less" scoped></style>

+ 84 - 11
src/views/Home.vue

@@ -43,6 +43,17 @@
         </div>
         <EchartsBar ref="echartsBarRef" width="100%" height="400px" />
       </div>
+      <!-- 扇形图 -->
+      <div class="a-card-margin-top count-echarts-pie">
+        <div class="count-echarts-pie-item">
+          <div class="count-echarts-pie-item-title">文章类别占比</div>
+          <EchartsDoughnut ref="echartsPieOneRef" width="100%" height="360px" />
+        </div>
+        <div class="count-echarts-pie-item">
+          <div class="count-echarts-pie-item-title">试题类型占比</div>
+          <EchartsDoughnut ref="echartsPieTwoRef" width="100%" height="360px" />
+        </div>
+      </div>
     </a-spin>
   </div>
 </template>
@@ -50,10 +61,12 @@
 <script>
 import { mapGetters } from 'vuex';
 import EchartsBar from '@/components/echarts/EchartsBar';
+import EchartsDoughnut from '@/components/echarts/EchartsDoughnut';
 export default {
   props: {},
   components: {
     EchartsBar,
+    EchartsDoughnut,
   },
   data() {
     return {
@@ -75,11 +88,9 @@ export default {
       examsProportion: {},
     };
   },
-  created() {
-    this.initDataFun(); // 初始化数据
-  },
+  created() {},
   mounted() {
-    this.$refs.echartsBarRef.initDataFun(this.barData);
+    this.initDataFun(); // 初始化数据
   },
   beforeDestroy() {},
   watch: {},
@@ -111,7 +122,6 @@ export default {
       ];
       this.getArticleCount(this.basicList); // 查询:文章总数
       this.getAverageTestScore(); // 查询:统计图-考试平均成绩:本周、本月、全年
-      this.getArticlesProportion(); // 查询:文章类别占比
     },
     // 查询:文章总数
     getArticleCount(basicList) {
@@ -121,6 +131,7 @@ export default {
         .then((res) => {
           basicList[0].count = res.data;
           this.getArticleCountUp(basicList); // 查询:本月新增文章数量
+          this.getArticlesProportion(); // 查询:文章类别占比
         })
         .catch(() => {
           this.loading1 = false;
@@ -180,6 +191,7 @@ export default {
         .get(this.$_API.INTERFACE_GET_COUNT_EXAMS_UP)
         .then((res) => {
           basicList[2].monthUp = res.data;
+          this.$refs.echartsBarRef.initDataFun(this.barData);
           this.loading1 = false;
         })
         .catch(() => {
@@ -236,8 +248,27 @@ export default {
       this.$_http
         .get(this.$_API.INTERFACE_GET_COUNT_ARTICLE_PROPORTION)
         .then((res) => {
-          this.articlesProportion = res.data;
-          console.log(this.articlesProportion);
+          let dataArr = [];
+          for (let key in res.data) {
+            dataArr.push({
+              name: key,
+              value: formate(res.data[key]),
+            });
+          }
+          function formate(value) {
+            if (value.includes('%')) {
+              return Math.round(Number(value.replace('%', '')));
+            } else {
+              return value;
+            }
+          }
+          this.articlesProportion = {
+            title: '文章总计',
+            seriesLabel: '文章类别占比',
+            count: this.basicList[0].count,
+            data: dataArr,
+          };
+          this.$refs.echartsPieOneRef.initDataFun(this.articlesProportion);
           this.getExamssProportion(); // 查询:试题类别占比
         })
         .catch(() => {
@@ -245,12 +276,32 @@ export default {
         });
     },
     // 查询:试题类别占比
-    getExamssProportion() {
+    getExamssProportion(count) {
       this.$_http
         .get(this.$_API.INTERFACE_GET_COUNT_QUESTIONS_PROPORTION)
         .then((res) => {
-          this.examsProportion = res.data;
-          console.log(this.examsProportion);
+          let dataArr = [];
+          for (let key in res.data) {
+            dataArr.push({
+              name: key,
+              value: formate(res.data[key]),
+            });
+          }
+          function formate(value) {
+            if (value.includes('%')) {
+              return Math.round(Number(value.replace('%', '')));
+            } else {
+              return value;
+            }
+          }
+          this.articlesProportion = {
+            title: '试题总计',
+            seriesLabel: '试题类别占比',
+            count: count,
+            data: dataArr,
+          };
+          console.log(this.articlesProportion);
+          this.$refs.echartsPieTwoRef.initDataFun(this.articlesProportion);
           this.loading3 = false;
         })
         .catch(() => {
@@ -271,7 +322,8 @@ export default {
 <style lang="less" scoped>
 @import '~@/styles/common/variable.less';
 .app-container {
-  overflow: auto;
+  overflow-y: auto;
+  overflow-x: hidden;
   .count-basic-data {
     display: flex;
     .count-basic-data-item {
@@ -361,5 +413,26 @@ export default {
       }
     }
   }
+  .count-echarts-pie {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    .count-echarts-pie-item {
+      width: calc(50% - 8px);
+      // overflow-x: hidden;
+      background-color: @mainColorWhite;
+      .count-echarts-pie-item-title {
+        padding: @paddingMarginVal;
+        width: 100%;
+        border-bottom: 1px solid @mainColorBorder;
+        display: flex;
+        align-items: center;
+        font-size: 14px;
+        color: @mainColorBlack65;
+        flex-wrap: nowrap;
+        white-space: nowrap;
+      }
+    }
+  }
 }
 </style>