From 98899e05df715b4fc19b361ddde0f2a7b9ec5c29 Mon Sep 17 00:00:00 2001
From: 黄何裕 <1053952480@qq.com>
Date: 星期四, 08 八月 2024 09:28:45 +0800
Subject: [PATCH] 大屏部分数据对接

---
 src/api/newpage.js                                |   17 +++++
 src/views/screen/components/screen-data/index.vue |   16 +++-
 vue.config.js                                     |    4 
 src/main.js                                       |    4 
 src/views/screen/newPage/index.vue                |  119 +++++++++++++++++----------------------
 src/views/system/point/region/index.vue           |    1 
 src/views/home/data-view/components/data-icon.vue |    4 
 7 files changed, 87 insertions(+), 78 deletions(-)

diff --git a/src/api/newpage.js b/src/api/newpage.js
new file mode 100644
index 0000000..d4de53b
--- /dev/null
+++ b/src/api/newpage.js
@@ -0,0 +1,17 @@
+import request from '@/utils/request'
+
+// 璁惧鏁版嵁
+export function getDeviceData() {
+  return request({
+    url: '/dashboard/monitor',
+    method: 'get',
+  })
+}
+
+// 宸ュ崟鏁版嵁
+export function getWorkOrderData() {
+  return request({
+    url: '/dashboard/workOrder',
+    method: 'get',
+  })
+}
\ No newline at end of file
diff --git a/src/main.js b/src/main.js
index 7baf4cc..7cc0f9a 100644
--- a/src/main.js
+++ b/src/main.js
@@ -107,7 +107,7 @@
       duration: 1,
       ease: "power2.out",
       onUpdate: () => {
-        el.innerText = formatNumber(target.count.toFixed(0));
+        // el.innerText = formatNumber(target.count.toFixed(0));
       }
     })
 
@@ -122,7 +122,7 @@
       duration: 1,
       ease: "power2.out",
       onUpdate: () => {
-        el.innerText = formatNumber(target.count.toFixed(0));
+        // el.innerText = formatNumber(target.count.toFixed(0));
       }
     })
   }
diff --git a/src/views/home/data-view/components/data-icon.vue b/src/views/home/data-view/components/data-icon.vue
index e11e88e..4bc3662 100644
--- a/src/views/home/data-view/components/data-icon.vue
+++ b/src/views/home/data-view/components/data-icon.vue
@@ -85,7 +85,7 @@
           duration: 1,
           ease: "power2.out",
           onUpdate: () => {
-            el.innerText = target.count.toFixed(0);
+            // el.innerText = target.count.toFixed(0);
           }
         })
       },
@@ -99,7 +99,7 @@
           duration: 1,
           ease: "power2.out",
           onUpdate: () => {
-            el.innerText = target.count.toFixed(0);
+            // el.innerText = target.count.toFixed(0);
           }
         })
       }
diff --git a/src/views/screen/components/screen-data/index.vue b/src/views/screen/components/screen-data/index.vue
index f38b227..85d070b 100644
--- a/src/views/screen/components/screen-data/index.vue
+++ b/src/views/screen/components/screen-data/index.vue
@@ -7,7 +7,7 @@
 
     <div class="data-content">
       <div class="data-panel">
-        <div class="panel-title" style="margin-bottom: 30px;">
+        <div class="panel-title" style="margin-bottom: 30px">
           <div class="icon">
             <img src="@/assets/icons/arrow.png" alt="" />
           </div>
@@ -17,28 +17,28 @@
           <div class="panel-item">
             <data-hola
               :holaTitle="`宸ュ崟鎬绘暟`"
-              :centerValue="3000"
+              :centerValue="workOrderData.workOrderTotal.totalNum"
               :holaColor="`#4ea8ff`"
             ></data-hola>
           </div>
           <div class="panel-item">
             <data-hola
               :holaTitle="`宸插鐞嗗伐鍗曟暟`"
-              :centerValue="1600"
+              :centerValue="workOrderData.workOrderTotal.todolNum"
               :holaColor="`#5dec24`"
             ></data-hola>
           </div>
           <div class="panel-item">
             <data-hola
               :holaTitle="`鏈鐞嗗伐鍗曟暟`"
-              :centerValue="200"
+              :centerValue="workOrderData.workOrderTotal.doneNum"
               :holaColor="`#dfc639`"
             ></data-hola>
           </div>
         </div>
       </div>
       <div class="data-panel">
-        <div class="panel-title" style="margin: 50px 0 30px 0;">
+        <div class="panel-title" style="margin: 50px 0 30px 0">
           <div class="icon">
             <img src="@/assets/icons/arrow.png" alt="" />
           </div>
@@ -63,6 +63,12 @@
     WrapperTitle,
     DataHola,
   },
+  props: {
+    workOrderData: {
+      type: Object,
+      default: null,
+    },
+  },
   data() {
     return {
       dataList: {
diff --git a/src/views/screen/newPage/index.vue b/src/views/screen/newPage/index.vue
index a2a83e9..7408779 100644
--- a/src/views/screen/newPage/index.vue
+++ b/src/views/screen/newPage/index.vue
@@ -22,7 +22,7 @@
         </div>
         <div class="card" style="height: 622px">
           <div class="card_header"><div class="title">宸ュ崟鏁版嵁</div></div>
-          <div><ScreenData></ScreenData></div>
+          <div><ScreenData :workOrderData="workOrderData"></ScreenData></div>
         </div>
       </div>
       <div class="large_screen_box">
@@ -35,89 +35,35 @@
             <div class="title">璁惧鏁版嵁</div>
           </div>
           <div>
-            <div class="device_data">
+            <div
+              class="device_data"
+              v-for="(item, index) in deviceList"
+              :key="index"
+            >
               <img
                 src="../../../assets/images/screen/lxicon.png"
                 alt=""
                 style="height: 25px"
               />
-              <div style="margin: 0 10px">浜鸿劯</div>
+              <div style="margin: 0 10px">{{ item.type }}</div>
               <div class="data-info">
                 <div class="data-lable">璁惧鎬绘暟</div>
                 <div class="data-num type1">
-                  <span v-roll>{{ 1123 }}</span
+                  <span v-roll>{{ item.totalNum }}</span
                   ><i class="el-icon-top"></i>
                 </div>
               </div>
               <div class="data-info">
                 <div class="data-lable">璁惧姝e父鏁�</div>
                 <div class="data-num type2">
-                  <span v-roll>{{ 1123 }}</span
+                  <span v-roll>{{ item.normalNum }}</span
                   ><i class="el-icon-top"></i>
                 </div>
               </div>
               <div class="data-info">
                 <div class="data-lable">璁惧寮傚父鏁�</div>
                 <div class="data-num type3">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-            </div>
-            <div class="device_data">
-              <img
-                src="../../../assets/images/screen/lxicon.png"
-                alt=""
-                style="height: 25px"
-              />
-              <div style="margin: 0 10px">杞﹁締</div>
-              <div class="data-info">
-                <div class="data-lable">璁惧鎬绘暟</div>
-                <div class="data-num type1">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-              <div class="data-info">
-                <div class="data-lable">璁惧姝e父鏁�</div>
-                <div class="data-num type2">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-              <div class="data-info">
-                <div class="data-lable">璁惧寮傚父鏁�</div>
-                <div class="data-num type3">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-            </div>
-            <div class="device_data">
-              <img
-                src="../../../assets/images/screen/lxicon.png"
-                alt=""
-                style="height: 25px"
-              />
-              <div style="margin: 0 10px">瑙嗛</div>
-              <div class="data-info">
-                <div class="data-lable">璁惧鎬绘暟</div>
-                <div class="data-num type1">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-              <div class="data-info">
-                <div class="data-lable">璁惧姝e父鏁�</div>
-                <div class="data-num type2">
-                  <span v-roll>{{ 1123 }}</span
-                  ><i class="el-icon-bottom"></i>
-                </div>
-              </div>
-              <div class="data-info">
-                <div class="data-lable">璁惧寮傚父鏁�</div>
-                <div class="data-num type3">
-                  <span v-roll>{{ 1123 }}</span
+                  <span v-roll>{{ item.errorNum }}</span
                   ><i class="el-icon-bottom"></i>
                 </div>
               </div>
@@ -179,6 +125,7 @@
 import ExamineChart from "../components/screen-examine/components/examine-chart.vue";
 import ScreenData from "../components/screen-data/index.vue";
 import NewMap from "./components/newMap.vue";
+import { getDeviceData, getWorkOrderData } from "@/api/newpage";
 export default {
   name: "Newpage",
   components: {
@@ -199,7 +146,7 @@
           value: "1",
         },
         {
-          name: "甯傚眬鏁版嵁",
+          name: "鍖哄幙鏁版嵁",
           value: "2",
         },
         {
@@ -207,9 +154,36 @@
           value: "3",
         },
       ],
+      deviceList: [],
+      workOrderData: {
+        workOrderRegion: {
+          create_time: "2024-03-05T19:04:24",
+          deleted: 0,
+          error_type: "缃戠粶鏁呴殰,鏃犲厜",
+          id: 1,
+          serial_number: 0,
+          source: "涓北澶ч亾涓庡疂鍠勫贩浜ゅ弶鍙d笢",
+          status: "DISTRIBUTED",
+          unit_id: 2,
+          update_time: "2024-04-15T17:07:54",
+          work_order_no: "202403051212",
+          yw_check_result: "/profile/upload/2024/03/26/20240326100819A001.jpg",
+          yw_condition: "淇瀹屾垚",
+          yw_handle_time: "2024-03-05T19:04:06",
+          yw_people_id: 1,
+          yw_result: "OK",
+        },
+        workOrderTotal: {
+          doneNum: 8,
+          todoNum: 20,
+          totalNum: 28,
+        },
+      },
     };
   },
-  mounted() {},
+  mounted() {
+    this.getData();
+  },
   methods: {
     returnPath() {
       this.$router.push("/index");
@@ -217,6 +191,19 @@
     handleClick(tab, event) {
       console.log(tab, event);
     },
+    getData() {
+      getDeviceData()
+        .then((res) => {
+          this.deviceList = res.data.monitorTotal;
+        })
+        .catch((err) => {});
+      getWorkOrderData()
+        .then((res) => {
+          this.workOrderData = res.data;
+          console.log(res, "zxczxczxcxc");
+        })
+        .catch((err) => {});
+    },
   },
 };
 </script>
diff --git a/src/views/system/point/region/index.vue b/src/views/system/point/region/index.vue
index d12face..08f961a 100644
--- a/src/views/system/point/region/index.vue
+++ b/src/views/system/point/region/index.vue
@@ -86,7 +86,6 @@
     <el-table v-loading="loading"
               :data="regionList"
               row-key="id"
-              border
               default-expand-all
               :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
               @selection-change="handleSelectionChange">
diff --git a/vue.config.js b/vue.config.js
index a0c8509..28d4193 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -38,10 +38,10 @@
         // target: `http://localhost:8080`,
 
         // 浠樼珛楹�
-        target: `http://192.168.3.64:8080`,
+        // target: `http://192.168.3.64:8080`,
 
         // 榫氱剷鑼�
-        // target: `http://192.168.3.87:8080`,
+        target: `http://192.168.3.87:8080`,
         
         // 鍚戝煿
         // target: `http://192.168.3.88:8085`,

--
Gitblit v1.8.0