From 4595b8b5a9c7afdeff9929022bfa3ca31a24ce06 Mon Sep 17 00:00:00 2001
From: quanyawei <401863037@qq.com>
Date: Fri, 15 Mar 2024 13:10:52 +0800
Subject: [PATCH] fix: 走航报告下载修改

---
 src/views/Equipment/index.vue |  181 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 140 insertions(+), 41 deletions(-)

diff --git a/src/views/Equipment/index.vue b/src/views/Equipment/index.vue
index 8a431d3..cae8f44 100644
--- a/src/views/Equipment/index.vue
+++ b/src/views/Equipment/index.vue
@@ -2,59 +2,128 @@
   <div style="padding: 20px">
     <el-card>
       <div style="display: flex">
-        <div class="timee">
+        <div
+          class="timee"
+          style="margin-top: 0.5rem"
+        >
           {{ time }}
         </div>
-        <div style="margin-left: 20px; margin-top: -12px">
+        <div style="margin-left: 1.5rem">
           <span>���������������:</span>
           <el-cascader
+            v-model="newMac"
             :options="options"
             :props="props"
             collapse-tags
             clearable
-          ></el-cascader>
+            placeholder="������������"
+            style="width: 25rem"
+            @change="changeYz"
+          />
         </div>
-        <div style="margin-left: 20px; margin-top: -12px">
+        <div style="margin-left: 1.5rem">
           <span>������������:</span>
           <el-cascader
-            :options="options"
+            v-model="value"
+            :options="newSensor"
             :props="props"
             collapse-tags
             clearable
-          ></el-cascader>
+            @change="res"
+          />
         </div>
-        <div style="margin-left: 20px; margin-top: -12px">
-          <el-button type="primary">������</el-button>
+        <div style="margin-left: 1.5rem">
+          <el-button
+            type="primary"
+            @click="Equisel"
+          >
+            ������
+          </el-button>
         </div>
       </div>
     </el-card>
+    <el-table
+      :data="dateList"
+      style="margin-top: 20px"
+      border
+      max-height="800"
+    >
+      <el-table-column
+        v-for="item in columnList"
+        :key="item"
+        :prop="item"
+        :label="item"
+        width="180px"
+      />
+    </el-table>
   </div>
-</template>        
+</template>
 
 <script>
-//���������������������������������������������������������js������������������js���json������������������������������
+// ���������������������������������������������������������js������������������js���json������������������������������
 // ���������import������������������from'������������������';
 
 export default {
-  //import ���������������������������������������������������
+  // import ���������������������������������������������������
   components: {},
   props: {},
-  data() {
-    //������������������
+  data () {
+    // ������������������
     return {
       time: '',
       props: { multiple: true },
       defaultData: [],
       options: [],
+      newSensor: [],
+      newMac: '',
+      newMac1: [],
+      value: '',
+      value1: '',
+      columnList: [], // ���������������
+      dateList: [],
     }
   },
   // ������������ ���������data������
   computed: {},
   // ������data������������������
-  watch: {},
-  //������������
+  watch: {
+    newMac (newVal, oldval) {
+      this.newMac1 = []
+      for (let i = 0; i < newVal.length; i++) {
+        // console.log(newVal[i], 111)
+        this.newMac1.push(newVal[i][1][1])
+      }
+      // ������������������������������������������
+      this.getSensor()
+      console.log(this.newMac1)
+    },
+    value (n, o) {
+      this.value1 = []
+      for (let i = 0; i < n.length; i++) {
+        this.value1.push(n[i][0])
+      }
+    },
+  },
+  // ������������ - ��������������������������������� this ���������
+  created () {
+    this.time = this.dateTypeFormat('YYYY-mm-dd HH:MM:SS', new Date())
+    this.getData()
+  },
+  // ������������ - ��������������������������� DOM ���������
+  mounted () {},
+  beforeCreate () {}, // ������������ - ������������
+  beforeMount () {}, // ������������ - ������������
+  beforeUpdate () {}, // ������������ - ������������
+  updated () {}, // ������������ - ������������
+  beforeDestroy () {}, // ������������ - ������������
+  destroyed () {}, // ������������ - ������������
+  activated () {},
+  // ������������
   methods: {
-    getData() {
+    res (res) {
+      console.log(res.toString())
+    },
+    getData () {
       this.$request({
         url: '/monitorPoint/queryMonitorPoints',
         method: 'get',
@@ -70,14 +139,16 @@
               label: this.defaultData[i].name,
             })
             this.options[i].children = []
-            for (let j = 0; j < this.defaultData[i].devices.length; j++) {
-              this.options[i].children.push({
-                value: [
-                  this.defaultData[i].devices[j].name,
-                  this.defaultData[i].devices[j].mac,
-                ],
-                label: this.defaultData[i].devices[j].name,
-              })
+            if (this.defaultData[i].devices) {
+              for (let j = 0; j < this.defaultData[i].devices.length; j++) {
+                this.options[i].children.push({
+                  value: [
+                    this.defaultData[i].devices[j].name,
+                    this.defaultData[i].devices[j].mac,
+                  ],
+                  label: this.defaultData[i].devices[j].name,
+                })
+              }
             }
           }
         })
@@ -85,23 +156,51 @@
           console.log(error)
         })
     },
-  },
-  //������������ - ��������������������������������� this ���������
-  created() {
-    var timer = this.dateTypeFormat('YYYY-mm-dd HH:MM:SS', new Date())
-    this.time = timer
-    this.getData();
-  },
-  //������������ - ��������������������������� DOM ���������
-  mounted() {},
-  beforeCreate() {}, //������������ - ������������
-  beforeMount() {}, //������������ - ������������
-  beforeUpdate() {}, //������������ - ������������
-  updated() {}, //������������ - ������������
-  beforeDestroy() {}, //������������ - ������������
-  destroyed() {}, //������������ - ������������
-  activated() {}, //���������������keep-alive������������������������������������
+    changeYz () {
+      this.getSensor()
+    },
+    getSensor () {
+      this.$request({
+        url: '/deviceInfo/getMacSensors',
+        method: 'post',
+        data: {
+          macs: this.newMac1,
+        },
+      })
+        .then((result) => {
+          console.log(result)
+          var sensor = result.data
+          for (var i in sensor) {
+            this.newSensor.push({ value: i, label: sensor[i] })
+          }
+        })
+        .catch((err) => {
+          console.log(err)
+        })
+    },
+    Equisel () {
+      this.$request({
+        url: '',
+        method: 'post',
+        data: {
+          time: this.time,
+          zhan: this.newMac1,
+          sensorCode: this.value1
+        }
+      }).then((res) => {
+        console.log(res)
+        this.tableData = res.data
+        console.log(this.tableData, 'this.tableData')
+        for (let key in this.tableData[0]) {
+          this.columnList.push(key)
+        }
+        for (let item of this.tableData) {
+          this.dateList.push(item)
+        }
+      })
+    }
+  }, // ���������������keep-alive������������������������������������
 }
 </script>
 <style scoped>
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0