From f3acb8ce787f3df0eda633031473be4e6a9ff448 Mon Sep 17 00:00:00 2001
From: zmc <zmc_li@foxmail.com>
Date: 星期四, 12 十月 2023 16:56:28 +0800
Subject: [PATCH] 油烟 更新了实时监控页面

---
 src/views/analysis/HomePage.vue |  123 +++++++++++++++++++++++-----------------
 1 files changed, 70 insertions(+), 53 deletions(-)

diff --git a/src/views/analysis/HomePage.vue b/src/views/analysis/HomePage.vue
index 74738ed..0161f33 100644
--- a/src/views/analysis/HomePage.vue
+++ b/src/views/analysis/HomePage.vue
@@ -2,7 +2,7 @@
 <template>
   <div   class="page-header">
 
-        <el-radio disabled v-model="radio" label="閫変腑涓旂鐢�" >寰愭眹鍖� 澶╄��妗� 鐢颁笂鍧�</el-radio>
+        <el-radio disabled v-model="radio" label="閫変腑涓旂鐢�" >寰愭眹鍖� 澶╅挜妗� 鐢板皻鍧�</el-radio>
   
         <div class="page-label" >
           <span class="shop-label">搴楅摵鍚�</span>
@@ -18,7 +18,6 @@
       </el-option>
     </el-select>
   </div>          
-   <!-- <el-form-item label="寮�濮嬫棩鏈�"  class="form-time-lable1"> -->
     <div class="time-label"> 
     <span>寮�濮嬫棩鏈� </span>
     <el-date-picker
@@ -29,9 +28,7 @@
   </el-date-picker>
 </div>
 <div class="time-label">
-   <!-- </el-form-item> -->
    <span>缁撴潫鏃ユ湡 </span>
-  <!-- <el-form-item label="缁撴潫鏃ユ湡" class="form-time-lable2"> -->
     <el-date-picker
     v-model="end"
     type="datetime"
@@ -42,17 +39,12 @@
   <!-- </el-form-item> -->
 </div> 
   <div style="display: flex; justify-content: right; margin-right: 160px;">
-  <el-button type="primary" @click="isRepeat">缁熻鍒嗘瀽</el-button>
-  <el-button type="primary" @click="toSql">鍏ュ簱绠$悊</el-button>
+  <el-button type="primary" :loading="button.statisticsButton"  @click="isRepeat">缁熻鍒嗘瀽</el-button>
+  <el-button type="primary" :loading="button.WarehousingButton"  @click="toSql">鍏ュ簱绠$悊</el-button>
 </div>
 
   
-  <!-- <span style="margin-left: 200px; ">鍒嗘瀽鑰楁椂锛歿{gapT}}ms</span>
-    <el-divider direction="vertical"></el-divider>
-  <span>缁撴灉鏉℃暟锛歿{total}}</span>
-    <el-divider direction="vertical"></el-divider>
-  <span>宸插啓鍏ユ暟鎹簱锛歿{isWrite}}</span> -->
-  <!-- <br/> -->
+
   <div style="display: flex; justify-content: right; margin-right: 110px;">
   <span >鍒嗘瀽鑰楁椂锛歿{gapT}}ms</span>
   <el-divider direction="vertical"></el-divider>
@@ -60,15 +52,12 @@
   <el-divider direction="vertical"></el-divider>
 </div>
 <br/>
-   <!-- </el-form> -->
-  <!-- </el-card> -->
-  <!-- </el-header> -->
 
-  <!-- <el-main> -->
-    <div class="table" v-show="!isNoData">
-      <el-table  :data="displayData" border="" id="table" ref="table" height="500px" v-loading="loading" >
-      <el-table-column type="index" label="搴忓彿" :index="indexMethod" v-if="showColumn.num"> </el-table-column> <!--缁戝畾涓�涓柟娉曪紝灏嗚繑鍥炲�艰祴缁檌ndex,鍗宠〃鏍兼瘡琛屾暟鎹殑涓嬫爣-->
-      <el-table-column prop="fumeDevId" label="璁惧缂栧彿" v-if="showColumn.deviceid" fixed> </el-table-column>
+    <div class="table" v-show="!isNoData" v-loading="loading">
+      <el-table  :data="displayData" border="" id="table" ref="table" height="500px"  >
+      <el-table-column type="index" label="搴忓彿" :index="indexMethod" v-if="showColumn.num" fixed> </el-table-column> <!--缁戝畾涓�涓柟娉曪紝灏嗚繑鍥炲�艰祴缁檌ndex,鍗宠〃鏍兼瘡琛屾暟鎹殑涓嬫爣-->
+      <el-table-column prop="diName" label="搴楅摵鍚嶇О" v-if="showColumn.diName"> </el-table-column>
+      <el-table-column prop="fumeDevId" label="璁惧缂栧彿" v-if="showColumn.deviceid" > </el-table-column>
       <el-table-column prop="fumeDate"   label="鏃ユ湡"  v-if="showColumn.date"> </el-table-column>
       <el-table-column prop="fumeDayMin" label="鏃ユ渶灏忓��"  v-if="showColumn.min"></el-table-column>
       <el-table-column prop="fumeDayMax" label="鏃ユ渶澶у��"  v-if="showColumn.max"> </el-table-column>
@@ -121,6 +110,7 @@
       <div class="head">閫夋嫨鏄剧ず瀛楁</div>
       <div class="body">
         <el-checkbox v-model="checkList.num"  disabled>缂栧彿</el-checkbox>
+        <el-checkbox v-model="checkList.diName" disabled>搴楅摵鍚嶇О</el-checkbox>
         <el-checkbox v-model="checkList.deviceid" disabled>璁惧缂栧彿</el-checkbox>
         <el-checkbox v-model="checkList.date">鏃ユ湡</el-checkbox>
         <el-checkbox v-model="checkList.min">鏃ユ渶灏忓��</el-checkbox>
@@ -153,9 +143,7 @@
     </div>
   </div>
 </transition>
-  <!-- </el-main> -->
 </div>
-  <!-- </div> -->
   <el-empty v-show="isNoData" :image-size="200" />
 </template>
 
@@ -166,7 +154,13 @@
 export default {
 data() {
 return {
-      isNoData:false,
+      button:{
+        // 缁熻鍒嗘瀽鎸夐挳
+        statisticsButton:false,
+        // 鍏ュ簱鎸夐挳
+        WarehousingButton:false
+      },
+      isNoData:true,
       loading:false,
       radio: '閫変腑涓旂鐢�',
       gapT:0,     //鍒嗘瀽鐨勮繃绋嬫柟娉曡�楁椂
@@ -184,6 +178,7 @@
       checkList: {},
       showColumn: {
           num:true,
+          diName:true,
           deviceid:true,
           date:true,
           min:true,
@@ -264,6 +259,7 @@
       this.checkList = {
         num:true,
         deviceid:true,
+        diName:true,
         date:true,
         min:true,
         max:true,
@@ -320,8 +316,9 @@
           this.isNoData = true
           return
         }
-        // 绉婚櫎绌烘暟鎹姸鎬�
+      // 绉婚櫎绌烘暟鎹姸鎬�
       this.isNoData = false
+      this.isRepeated = 0
     this.total = this.afterAnalysis.length;
     this.handleCurrentChange(1); // 榛樿鏄剧ず绗竴椤�
 
@@ -330,6 +327,10 @@
 
   let endTime=new Date().getTime()
   this.gapT=endTime-startTime
+},
+
+getHasExisitedData(){
+
 },
 
 //鏄惁閲嶅
@@ -342,48 +343,63 @@
   if (this.shopname) {
     params['shopname'] = this.shopname;
   }
+  if(this.value){
+    params['value'] = this.value;
+  }
   if(this.begin){
     params['begin']=this.begin
   }
   if(this.end){
     params['end'] = this.end
   }
+  // 鍙﹀涓�涓猯oading鍦╝nalysisData()涓�
   this.loading=true
-  axiosInstanceInstance.get('/data/search',{params:params})
-    .then(response => {
-      this.isRepeated=response.data.data
-      console.log('璇锋眰',this.isRepeated);
+  this.button.statisticsButton = true
+  axiosInstanceInstance.get('/data/search',{params:params}).then(response => {
+      // this.isRepeated=response.data.data
+      if(response.data.data.length>0){
+          alert('璇ュ簵閾虹殑鏃舵宸插瓨鍦ㄥ垎鏋愭暟鎹�,璇烽噸鏂伴�夋嫨')
+          this.isRepeated = 1
+          this.loading=false
+          this.isNoData = false
+          this.button.statisticsButton = false
+          this.afterAnalysis = response.data.data
+          this.total = this.afterAnalysis.length;
+          // 榛樿鏄剧ず绗竴椤�
+          this.handleCurrentChange(1); 
+          return
+      }
+       // 璇锋眰宸插瓨鍦ㄧ殑鏁版嵁
+      else{
+        this.analysisData()
+        this.button.statisticsButton = false
+      }
+      
     })
-
-   setTimeout(() => {
-    console.log('璇锋眰鍚�',this.isRepeated);
-    if(this.isRepeated>0){
-      alert('璇ュ簵閾虹殑鏃舵宸插瓨鍦ㄥ垎鏋愭暟鎹�,璇烽噸鏂伴�夋嫨')
-        return
-    }else{
-      this.analysisData()
-      console.log('鎵ц浜�');
-    }
-   }, 1000);
-    
 },
+
 
 
 //鍐欏叆MySql
 toSql(){
-  this.afterAnalysis.forEach((item)=>{
-    console.log(item);
-    let jsonData=JSON.stringify(item)
-    console.log(jsonData);
-    axiosInstanceInstance.post('/data/tosql',jsonData,{headers:{
-      'Content-Type':'application/json'
-    }}).then((result)=>{
-      console.log(result);
+  if(this.isRepeated == 0){
+      this.button.WarehousingButton = true
+    this.afterAnalysis.forEach((item)=>{
+      let jsonData=JSON.stringify(item)
+      // axiosInstanceInstance.post('/data/tosql',jsonData,{headers:{
+      //   'Content-Type':'application/json'
+      // }}).then((result)=>{
+      //   // console.log(result);
+      // })
+      
     })
-    
-  })
-  alert('宸叉垚鍔熷啓鍏ユ暟鎹簱')
-  this.isWrite='鏄�'
+    alert('宸叉垚鍔熷啓鍏ユ暟鎹簱')
+    this.button.WarehousingButton = fasle
+    this.isWrite='鏄�'
+    }else{
+      alert('閲嶅鍊间笉鍙啓鍏ユ暟鎹簱')
+    }
+ 
 },
 
 
@@ -393,6 +409,7 @@
 },
 handleCurrentChange(val) {
 const startIndex = (val - 1) * this.pageSize;
+
 const endIndex = startIndex + this.pageSize;
 this.displayData = this.afterAnalysis.slice(startIndex, endIndex);
 
@@ -444,7 +461,7 @@
 
 </script>
 
-<style>
+<style lang="scss">
 /* 鍗$墖 */
 .box-card {
   /* width: 1700px; */

--
Gitblit v1.9.3