From da4d9e70d2c37f59a365b0fb88ad70e8c1ba79b4 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期一, 11 十二月 2023 10:25:01 +0800
Subject: [PATCH] 机器开机率优化

---
 src/views/cockpitPage/index.vue |  177 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 118 insertions(+), 59 deletions(-)

diff --git a/src/views/cockpitPage/index.vue b/src/views/cockpitPage/index.vue
index 88ad270..ab3dd35 100644
--- a/src/views/cockpitPage/index.vue
+++ b/src/views/cockpitPage/index.vue
@@ -75,7 +75,7 @@
         { value: 0, label: "鎬讳骇閲�" },
         { value: 0, label: "鐢熶骇宸ュ崟鏁�" },
         { value: 0, label: "寤舵湡浜や粯" },
-        { value: 0, label: "鐗╂枡涓嶈冻" },
+        { value: 0, label: "鐗╂枡涓嶈冻/寰呮帓绋�" },
         { value: 0, label: "璁″垝杈炬垚鐜�" },
       ],
       // 鏈哄櫒寮�鏈虹巼
@@ -165,8 +165,9 @@
           item.value = data?.WorkOrderAmount ?? 0;
         } else if (item.label === "寤舵湡浜や粯") {
           item.value = data?.DelayWorkOrderAmount ?? 0;
-        } else if (item.label === "鐗╂枡涓嶈冻") {
+        } else if (item.label === "鐗╂枡涓嶈冻/寰呮帓绋�") {
           item.value = data?.MaterialMissWorkOrderAmount ?? 0;
+          item.value1 = data?.WaitSchedulingWorkOrderAmount ?? 0;
         } else if (item.label === "璁″垝杈炬垚鐜�") {
           let value =
             typeof data?.PlanOrderFinishRate === "string"
@@ -204,88 +205,107 @@
     },
     // 宸︿腑鏁版嵁缁熻鍊�
     setLeftBlock3(data) {
+      console.log(this.setNumbers(data?.OutPlanProductionAmount ?? 0));
       this.totalObject = {
-        InternalDeviceRunningAmount: data?.InternalDeviceRunningAmount ?? 0,
+        InternalDeviceRunningAmount: (
+          data?.InternalDeviceRunningAmount ?? 0
+        ).toString(),
         ExternalDeviceRunningAmount: data?.ExternalDeviceRunningAmount ?? 0,
-        OutPlanProductionAmount: data?.OutPlanProductionAmount ?? 0,
-        PlanProductionAmount: data?.PlanProductionAmount ?? 0,
-        RealExternalProductionAmount: data?.RealExternalProductionAmount ?? 0,
-        RealProductionAmount: data?.RealProductionAmount ?? 0,
+        OutPlanProductionAmount: this.setNumbers(
+          data?.OutPlanProductionAmount ?? 0
+        ),
+        PlanProductionAmount: this.setNumbers(data?.PlanProductionAmount ?? 0),
+        RealExternalProductionAmount: this.setNumbers(
+          data?.RealExternalProductionAmount ?? 0
+        ),
+        RealProductionAmount: this.setNumbers(data?.RealProductionAmount ?? 0),
       };
     },
     // 璁㈠崟瀹屾垚姣旂巼
     setLeftBlock4(data) {
       this.orderCompleteObject.startIndex = 0;
       this.orderCompleteObject.orderCompleteList = [];
-      let list = data.OrderFinishRate.map((item) => {
-        return {
-          title: item.Name,
-          radio: parseFloat(item.Value),
-        };
-      });
-      this.orderCompleteObject.orderCompleteList = list;
+      if (data.OrderFinishRate && data.OrderFinishRate.length > 0) {
+        let list = data?.OrderFinishRate.map((item) => {
+          return {
+            title: item.Name,
+            radio: parseFloat(item.Value),
+          };
+        });
+        this.orderCompleteObject.orderCompleteList = list;
+      }
     },
     // 宸ュ崟杩涘害缁熻
     setLeftBlock5(data) {
       this.workOrderFinishRate = data?.WorkOrderFinishRate.toString() ?? "0";
-      let list = data.WorkOrderStats.map((item) => {
-        let completeProgerss = [];
-        for (let i = 0; i < item.ProcedureNum; i++) {
-          let status = 0;
-          if (i < item.FinishProcedureNum) {
-            status = 1;
-          } else if (
-            i >= item.FinishProcedureNum &&
-            i < item.FinishProcedureNum + item.ProcessingProcedureNum
-          ) {
-            status = 2;
-          } else {
-            status = 0;
+      if (data.WorkOrderStats && data.WorkOrderStats.length > 0) {
+        let list = data.WorkOrderStats.map((item) => {
+          let completeProgerss = [];
+          for (let i = 0; i < item.ProcedureNum; i++) {
+            let status = 0;
+            if (i < item.FinishProcedureNum) {
+              status = 1;
+            } else if (
+              i >= item.FinishProcedureNum &&
+              i < item.FinishProcedureNum + item.ProcessingProcedureNum
+            ) {
+              status = 2;
+            } else {
+              status = 0;
+            }
+            completeProgerss.push({ status: status });
           }
-          completeProgerss.push({ status: status });
-        }
-        return {
-          ...item,
-          completeProgerss: completeProgerss,
-        };
-      });
-      this.workOrderData = list;
+          return {
+            ...item,
+            completeProgerss: completeProgerss,
+          };
+        });
+        this.workOrderData = list;
+      }
     },
     // 浜哄憳鐢熸晥鏁堢巼姣� 浜哄憳鎶�鑳�
     setLeftBlock6(data) {
       this.perSonnelChartData.datax = [];
       this.perSonnelChartData.datay = [];
-      data.PersonnelProductivity.map((item) => {
-        this.perSonnelChartData.datax.push(item.Name);
-        this.perSonnelChartData.datay.push(parseFloat(item.Value));
-      });
+      if (data.PersonnelProductivity && data.PersonnelProductivity.length > 0) {
+        data.PersonnelProductivity.map((item) => {
+          this.perSonnelChartData.datax.push(item.Name);
+          this.perSonnelChartData.datay.push(parseFloat(item.Value));
+        });
+      }
       // 浜哄憳鎶�鑳介ゼ鍥�
       let chartData2 = [];
-      chartData2 = data.WorkerTypeStats.map((item) => {
-        return {
-          name: item.Name,
-          value: parseFloat(item.Value),
-        };
-      });
-      this.$refs.leftBlock6.getChartRight("chart2", chartData2);
+      if (data.WorkerTypeStats && data.WorkerTypeStats.length > 0) {
+        chartData2 = data.WorkerTypeStats.map((item) => {
+          return {
+            name: item.Name,
+            value: parseFloat(item.Value),
+          };
+        });
+        this.$refs.leftBlock6.getChartRight("chart2", chartData2);
+      }
     },
     // 璁惧璐熻嵎瀵规瘮
     setRightBlock1(data) {
       this.deviceChartData.datax = [];
       this.deviceChartData.datay = [];
-      data.DeviceLoad.map((item) => {
-        this.deviceChartData.datax.push(item.Name);
-        this.deviceChartData.datay.push(parseFloat(item.Value));
-      });
+      if (data.DeviceLoad && data.DeviceLoad.length > 0) {
+        data.DeviceLoad.map((item) => {
+          this.deviceChartData.datax.push(item.Name);
+          this.deviceChartData.datay.push(parseFloat(item.Value));
+        });
+      }
     },
     // 鐗╂枡闇�姹傜粺璁�
     setRightBlock2(data) {
       this.materialChartData.datax = [];
       this.materialChartData.datay = [];
-      data.MaterialRequirement.map((item) => {
-        this.materialChartData.datax.push(item.Name);
-        this.materialChartData.datay.push(parseFloat(item.Value));
-      });
+      if (data.MaterialRequirement && data.MaterialRequirement.length > 0) {
+        data.MaterialRequirement.map((item) => {
+          this.materialChartData.datax.push(item.Name);
+          this.materialChartData.datay.push(parseFloat(item.Value));
+        });
+      }
     },
     // 杞﹂棿姝e搧鐜�
     setRightBlock3(data) {
@@ -294,11 +314,50 @@
       this.barChartData.datax = [];
       this.barChartData.datay = [];
       this.barChartData.datay2 = [];
-      data.WorkshopStats.map((item) => {
-        this.barChartData.datax.push(item.Name);
-        this.barChartData.datay.push(parseFloat(item.Qualified));
-        this.barChartData.datay2.push(parseFloat(item.Defective));
-      });
+      if (data.WorkshopStats && data.WorkshopStats.length > 0) {
+        data.WorkshopStats.map((item) => {
+          this.barChartData.datax.push(item.Name);
+          this.barChartData.datay.push(parseFloat(item.Qualified));
+          this.barChartData.datay2.push(parseFloat(item.Defective));
+        });
+      }
+    },
+
+    // 璁$畻鍔犲伐鏁� 鐢熶骇鏁�
+    setNumbers(val) {
+      if (val > 1000 && val < 10000) {
+        let count = (val / 1000).toFixed(2);
+        return count.toString() + "鍗�";
+      } else if (val >= 10000 && val < 100000) {
+        let count1 = (val / 10000).toFixed(2);
+        return count1.toString() + "涓�";
+      } else if (val >= 100000 && val < 1000000) {
+        let count1 = (val / 100000).toFixed(0);
+        return count1.toString() + "鍗佷竾";
+      } else if (val >= 1000000 && val < 10000000) {
+        let count1 = (val / 1000000).toFixed(0);
+        return count1.toString() + "鐧句竾";
+      } else if (val >= 10000000 && val < 100000000) {
+        let count1 = (val / 10000000).toFixed(0);
+        return count1.toString() + "鍗冧竾";
+      } else if (val >= 100000000 && val < 1000000000) {
+        let count1 = (val / 100000000).toFixed(2);
+        return count1 + "浜�";
+      } else if (val >= 1000000000 && val < 10000000000) {
+        let count1 = (val / 1000000000).toFixed(0);
+        return count1.toString() + "鍗佷嚎";
+      } else if (val >= 10000000000 && val < 100000000000) {
+        let count1 = (val / 10000000000).toFixed(0);
+        return count1.toString() + "鐧句嚎";
+      } else if (val >= 100000000000 && val < 1000000000000) {
+        let count1 = (val / 100000000000).toFixed(0);
+        return count1.toString() + "鍗冧嚎";
+      } else if (val >= 1000000000000) {
+        let count1 = (val / 1000000000000).toFixed(0);
+        return count1.toString() + "涓囦嚎";
+      } else {
+        return val.toString();
+      }
     },
   },
 };

--
Gitblit v1.8.0