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