yusheng 4 روز پیش
والد
کامیت
bef4bcfbf2
3فایلهای تغییر یافته به همراه21 افزوده شده و 31 حذف شده
  1. 17 27
      src/views/home/data.js
  2. 1 1
      src/views/home/index.vue
  3. 3 3
      src/views/home/yuxin.vue

+ 17 - 27
src/views/home/data.js

@@ -279,22 +279,28 @@ export const preOptions1 = (
   return {
     color: ['#fc8452', '#9a60b4', '#ea7ccc', '#48b8d0', '#a3d2ca'],
     tooltip: {
-      // formatter: function (params) {
-      //   return `${params.name}<br/>次数: ${params.value}<br/>占比: ${params.percent}%`;
-      // },
+      formatter: function (params) {
+        return `${params.value}%`;
+      },
       // formatter: '{d}%',
-      trigger: 'item'
+      // trigger: 'item'
     },
     legend: {
       orient: 'vertical',
-      left: 'center', // 水平居中
-      top: 0, // 置于顶部
+      right: '10%',
+      top: '35%',
       itemGap: window.innerHeight * 0.018,
       formatter: function (name) {
         let value = data.find((item) => item.name === name);
-
+        let total = (data || []).reduce(
+          (sum, item) => sum + (Number(item.value) || 0),
+          0
+        );
+        let percent = total
+          ? (((Number(value?.value) || 0) / total) * 100).toFixed(2)
+          : 0;
         console.log(value);
-        return `${name}  |  ${value?.value || 0}  `;
+        return `${name}  |  ${value?.value || 0}%  `;
       },
       textStyle: {
         fontSize: window.innerHeight * 0.014
@@ -330,7 +336,7 @@ export const preOptions1 = (
         left: '26%',
         top: '48%',
         style: {
-          text: '质检次数',
+          text: '锅炉时率',
           textAlign: 'center',
           fill: '#000',
           fontSize: window.innerHeight * 0.013
@@ -372,22 +378,8 @@ export const lineOption = (data, type) => {
       trigger: 'item'
     },
     legend: {
-      orient: 'vertical',
-      right: '10%',
-      top: '35%',
+      orient: 'horizontal',
       itemGap: window.innerHeight * 0.018,
-      formatter: function (name) {
-        let value = data.find((item) => item.name === name);
-        let total = (data || []).reduce(
-          (sum, item) => sum + (Number(item.value) || 0),
-          0
-        );
-        let percent = total
-          ? (((Number(value?.value) || 0) / total) * 100).toFixed(2)
-          : 0;
-        console.log(value);
-        return `${name}  |  ${value?.value || 0}  (${percent}%)`;
-      },
       textStyle: {
         fontSize: window.innerHeight * 0.014
       }
@@ -430,9 +422,7 @@ export const lineOption1 = (data, type) => {
     color: ['#fc8452', '#9a60b4', '#ea7ccc', '#48b8d0', '#a3d2ca'],
     tooltip: {
       formatter: (item) => {
-        return (
-          item.seriesName + ' ' + item.name + '时率:' + item.value + '%'
-        );
+        return item.seriesName + ' ' + item.name + '时率:' + item.value + '%';
       },
       trigger: 'item'
     },

+ 1 - 1
src/views/home/index.vue

@@ -2,7 +2,7 @@
   <div>
     <yuxin v-if="$hasPermission('qms:yuxin:home')"></yuxin>
 
-    <common ></common>
+    <common v-else></common>
   </div>
 </template>
 

+ 3 - 3
src/views/home/yuxin.vue

@@ -212,7 +212,7 @@
         const res = await queryFrequencyMonthlyYx({ date: this.value4 });
         let list = res.map((el) => {
           return {
-            value: el.data,
+            value: parseFloat(String(el.data).replace('%', '')) || 0,
             name: el.name
           };
         });
@@ -238,7 +238,7 @@
           data.map((item) => {
             return {
               name: item.name,
-              data: item.data,
+              data: (item.data || []).map((v) => parseFloat(String(v).replace('%', '')) || 0),
               type: 'line',
               smooth: true // 开启平滑曲线
             };
@@ -254,7 +254,7 @@
           data.map((item) => {
             return {
               name: item.name,
-              data: item.data,
+              data: (item.data || []).map((v) => parseFloat(String(v).replace('%', '')) || 0),
               type: 'line',
               smooth: true // 开启平滑曲线
             };