From 923446fa3ce8fe19be88c710b52a84b522973492 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 09 八月 2024 16:02:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/api/newpage.js                                 |   25 ++++
 src/views/screen/components/screen-data/index.vue  |   16 +
 vue.config.js                                      |    4 
 src/main.js                                        |    4 
 src/views/screen/newPage/index.vue                 |  134 +++++++++++-----------
 src/views/system/point/region/index.vue            |    1 
 src/views/screen/components/screen-table/index.vue |  148 +++++++++++++++---------
 src/views/home/data-view/components/data-icon.vue  |    4 
 8 files changed, 201 insertions(+), 135 deletions(-)

diff --git a/src/api/newpage.js b/src/api/newpage.js
new file mode 100644
index 0000000..29a2767
--- /dev/null
+++ b/src/api/newpage.js
@@ -0,0 +1,25 @@
+import request from "@/utils/request";
+
+// 璁惧鏁版嵁
+export function getDeviceData() {
+  return request({
+    url: "/dashboard/monitor/total",
+    method: "get",
+  });
+}
+
+// 宸ュ崟鏁版嵁
+export function getWorkOrderData() {
+  return request({
+    url: "/dashboard/workOrder/total",
+    method: "get",
+  });
+}
+
+//璁惧姝e父鐜�
+export function getNormalRate(id) {
+  return request({
+    url: "/dashboard/monitor/rate?dataScope=" + id,
+    method: "get",
+  });
+}
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/components/screen-table/index.vue b/src/views/screen/components/screen-table/index.vue
index 2cf0b6d..4400918 100644
--- a/src/views/screen/components/screen-table/index.vue
+++ b/src/views/screen/components/screen-table/index.vue
@@ -13,7 +13,7 @@
           :max-height="tableHeight"
           class="rank-table"
         >
-          <el-table-column prop="name" label="鍦板尯" align="center" width="100">
+          <el-table-column prop="area" label="鍦板尯" align="center" width="100">
           </el-table-column>
 
           <el-table-column label="浜鸿劯璁惧" align="center">
@@ -22,14 +22,25 @@
                 <div slot="content">
                   <div class="tip-item">
                     <div class="tip-label">璁惧姝e父鏁�:</div>
-                    <div class="tip-info tip-success">12</div>
+                    <div class="tip-info tip-success">
+                      {{ scope.row.faceNormalNum }}
+                    </div>
                   </div>
                   <div class="tip-item">
                     <div class="tip-label">璁惧寮傚父鏁�:</div>
-                    <div class="tip-info tip-danger">4</div>
+                    <div class="tip-info tip-danger">
+                      {{ scope.row.faceErrorNum }}
+                    </div>
                   </div>
                 </div>
-                <div class="tip-num">75%</div>
+                <div class="tip-num">
+                  {{
+                    scope.row.faceRate?(
+                      (scope.row.faceNormalNum / scope.row.faceRate) *
+                      100
+                    ).toFixed(0)+'%':'--'
+                  }}
+                </div>
               </el-tooltip>
             </template>
           </el-table-column>
@@ -40,14 +51,25 @@
                 <div slot="content">
                   <div class="tip-item">
                     <div class="tip-label">璁惧姝e父鏁�:</div>
-                    <div class="tip-info tip-success">12</div>
+                    <div class="tip-info tip-success">
+                      {{ scope.row.carNormalNum }}
+                    </div>
                   </div>
                   <div class="tip-item">
                     <div class="tip-label">璁惧寮傚父鏁�:</div>
-                    <div class="tip-info tip-danger">4</div>
+                    <div class="tip-info tip-danger">
+                      {{ scope.row.carNormalNum }}
+                    </div>
                   </div>
                 </div>
-                <div class="tip-num">75%</div>
+                <div class="tip-num">
+                  {{
+                      scope.row.carRate?(
+                      (scope.row.carNormalNum / scope.row.carRate) *
+                      100
+                    ).toFixed(0)+'%':'--'
+                  }}
+                </div>
               </el-tooltip>
             </template>
           </el-table-column>
@@ -58,14 +80,25 @@
                 <div slot="content">
                   <div class="tip-item">
                     <div class="tip-label">璁惧姝e父鏁�:</div>
-                    <div class="tip-info tip-success">12</div>
+                    <div class="tip-info tip-success">
+                      {{ scope.row.videoNormalNum }}
+                    </div>
                   </div>
                   <div class="tip-item">
                     <div class="tip-label">璁惧寮傚父鏁�:</div>
-                    <div class="tip-info tip-danger">4</div>
+                    <div class="tip-info tip-danger">
+                      {{ scope.row.videoNormalNum }}
+                    </div>
                   </div>
                 </div>
-                <div class="tip-num">75%</div>
+                <div class="tip-num">
+                  {{
+                    scope.row.videoRate?(
+                      (scope.row.videoNormalNum / scope.row.videoRate) *
+                      100
+                    ).toFixed(0)+'%':'--'
+                  }}
+                </div>
               </el-tooltip>
             </template>
           </el-table-column>
@@ -80,57 +113,62 @@
 
 export default {
   name: "ScreenTable",
-
+  props: {
+    tableData: {
+      type: Array,
+      default: null,
+    },
+  },
   components: {
     WrapperTitle,
   },
   data() {
     return {
       tableHeight: 40,
-      tableData: [
-        {
-          name: "瀵岄『鍘�",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "鑽e幙",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "楂樻柊鍖�",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "鑷祦浜曞尯",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "璐′簳鍖�",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "澶у畨鍖�",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-        {
-          name: "娌挎哗鍖�",
-          data1: 1123,
-          data2: 1123,
-          data3: 1123,
-        },
-      ],
+      // tableData: [
+      //   {
+      //     name: "瀵岄『鍘�",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "鑽e幙",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "楂樻柊鍖�",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "鑷祦浜曞尯",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "璐′簳鍖�",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "澶у畨鍖�",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      //   {
+      //     name: "娌挎哗鍖�",
+      //     data1: 1123,
+      //     data2: 1123,
+      //     data3: 1123,
+      //   },
+      // ],
     };
   },
   methods: {
diff --git a/src/views/screen/newPage/index.vue b/src/views/screen/newPage/index.vue
index a2a83e9..32a7ed9 100644
--- a/src/views/screen/newPage/index.vue
+++ b/src/views/screen/newPage/index.vue
@@ -3,7 +3,7 @@
     <div style="display: flex; justify-content: center">
       <div class="header_box">
         <div class="tabs-box">
-          <el-tabs v-model="activeName" @tab-click="handleClick">
+          <el-tabs v-model="activeName" @tab-click="tabChange">
             <el-tab-pane
               v-for="item in testData1"
               :label="item.name"
@@ -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>
@@ -128,7 +74,7 @@
           <div class="card_header">
             <div class="title">璁惧姝e父鐜�</div>
             <div style="margin: 10px 10px">
-              <ScreenTable></ScreenTable>
+              <ScreenTable :tableData="tableData"></ScreenTable>
             </div>
           </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, getNormalRate } from "@/api/newpage";
 export default {
   name: "Newpage",
   components: {
@@ -199,7 +146,7 @@
           value: "1",
         },
         {
-          name: "甯傚眬鏁版嵁",
+          name: "鍖哄幙鏁版嵁",
           value: "2",
         },
         {
@@ -207,9 +154,37 @@
           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,
+        },
+      },
+      tableData: [],
     };
   },
-  mounted() {},
+  mounted() {
+    this.getData();
+  },
   methods: {
     returnPath() {
       this.$router.push("/index");
@@ -217,6 +192,29 @@
     handleClick(tab, event) {
       console.log(tab, event);
     },
+    getData() {
+      getDeviceData()
+        .then((res) => {
+          this.deviceList = res.data;
+        })
+        .catch((err) => {});
+      getWorkOrderData()
+        .then((res) => {
+          this.workOrderData = res.data;
+        })
+        .catch((err) => {});
+      this.getTableList();
+    },
+    getTableList() {
+      getNormalRate(this.activeName)
+        .then((res) => {
+          this.tableData = res.data;
+        })
+        .catch((err) => {});
+    },
+    tabChange(){
+      this. getTableList()
+    }
   },
 };
 </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..7d934eb 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.137.227:8080`,
         
         // 鍚戝煿
         // target: `http://192.168.3.88:8085`,

--
Gitblit v1.8.0