diff --git a/page_user/fengchangxq.vue b/page_user/fengchangxq.vue index b9a35f6..4459e9d 100644 --- a/page_user/fengchangxq.vue +++ b/page_user/fengchangxq.vue @@ -3,8 +3,6 @@ <u-navbar is-back="false" title="历史走势" :border-bottom="false" :background="bgc" title-color='#000' title-size='36' :title-bold='true' height='45' id="navbar"> </u-navbar> - - <view class="echarts_box"> <view class="echarts_top"> <view class="top_left"> @@ -16,12 +14,10 @@ </view> <view class="top_right"> <view style="width: 1rpx;"> - </view> <view class="txt"> <!-- 历史走势<view class="iconfont icon-xiangyou1"></view> --> </view> - </view> </view> <view class="echarts"> @@ -41,12 +37,10 @@ </view> <view class="top_right"> <view style="width: 1rpx;"> - </view> <view class="txt"> <!-- 历史走势<view class="iconfont icon-xiangyou1"></view> --> </view> - </view> </view> <view class="echarts"> @@ -57,7 +51,6 @@ </view> </view> </template> - <script> import uniEcCanvas from '@/components/uni-ec-canvas/uni-ec-canvas.vue' import * as echarts from '@/components/uni-ec-canvas/echarts' @@ -119,19 +112,14 @@ this.yeartime.year = now.getFullYear() this.yeartime.month = String(previousDay.getMonth() + 1).padStart(2, '0') this.yeartime.day = String(now.getDate()).padStart(2, '0') - - previousDay.setDate(now.getDate() - 30) this.yeartimes.year = previousDay.getFullYear() this.yeartimes.month = String(previousDay.getMonth() + 1).padStart(2, '0') this.yeartimes.day = String(previousDay.getDate()).padStart(2, '0') - this.getchartData3() this.getchartData4() - }, methods: { - // 重量图表 getchartData3() { let time = this.yeartime.year + '-' + this.yeartime.month + '-' + this.yeartime.day @@ -153,11 +141,9 @@ } }) }, - //重量图表 initChart3(canvas, width, height, canvasDpr) { let that = this - const option = { grid: { left: '4%', @@ -251,13 +237,12 @@ }, data: that.chartData3, }], - }; + } chart = echarts.init(canvas, null, { width: width, height: height, devicePixelRatio: canvasDpr }) - option.series[0].data = that.chartData3 canvas.setChart(chart) chart.setOption(option) @@ -266,7 +251,6 @@ // 进出量图表 initChart4(canvas, width, height, canvasDpr) { let that = this - const option = { grid: { left: '4%', @@ -360,20 +344,17 @@ }, data: that.chartData4, }], - }; + } chart = echarts.init(canvas, null, { width: width, height: height, devicePixelRatio: canvasDpr }) - option.series[0].data = that.chartData4 canvas.setChart(chart) chart.setOption(option) return chart - }, - - + }, } } </script> @@ -386,34 +367,24 @@ color: red; } .page { - // position: relative; width: 750rpx; - // padding-bottom: 200rpx; padding: 38rpx; box-sizing: border-box; .echarts_box { margin-top: 26rpx; padding: 18rpx 36rpx; width: 674rpx; - background: #FFFFFF; box-shadow: 0rpx 0rpx 8rpx 0rpx rgba(0, 0, 0, 0.15); border-radius: 28rpx 28rpx 28rpx 28rpx; - .echarts { - margin-top: 24rpx; - // width: 100%; - // height: 80%; width: 100%; height: 330rpx; } - .echarts_top { display: flex; align-items: center; - - // justify-content: space-between; .top_left { width: 38.33%; display: flex; @@ -428,7 +399,6 @@ height: 34rpx; } } - .top_cont { width: 33.33%; text-align: center; @@ -436,12 +406,10 @@ font-size: 36rpx; color: #3D3D3D; } - .top_right { width: 33.33%; display: flex; align-items: center; - .txt { display: flex; align-items: center; @@ -450,7 +418,6 @@ font-weight: 400; font-size: 32rpx; color: #4D4D4D; - .icon-xiangyou1 { margin-top: 4rpx; margin-left: 8rpx; @@ -459,6 +426,5 @@ } } } - } </style> \ No newline at end of file diff --git a/page_user/lurutwo.vue b/page_user/lurutwo.vue index 5821ffa..02dc335 100644 --- a/page_user/lurutwo.vue +++ b/page_user/lurutwo.vue @@ -12,23 +12,22 @@ <view class="qrcode" @click="qrcode()"> <image src="https://api.ccttiot.com/smartmeter/img/static/uy7BNwAMIKwvstqFnRhs" mode=""></image> </view> - <input type="text" class="ips" v-model="storeId" placeholder="请扫描设备上的二维码" style="margin-left: 32rpx;" - placeholder-class="my-placeholder" /> + <input type="text" class="ips" v-model="storeId" placeholder="请扫描设备上的二维码" style="margin-left: 32rpx;" placeholder-class="my-placeholder"/> </view> <view class="machao"> - MAC号:{{obj.mac == undefined ? '--' : obj.mac}} + MAC号:{{obj.mac == undefined ? '--' : obj.mac}} <text v-if="onlineStatus == '离线'" style="color: red;margin-left: 50rpx;">离线</text> <text v-if="onlineStatus == '在线'" style="color: green;margin-left: 50rpx;">在线</text> </view> <view class="machao"> 总重量:{{(obj.totalWeight == undefined ? '--' : (Number(obj.totalWeight / 1000)).toFixed(2)) + 'kg'}} </view> <view class="machao"> - 箱内温度:{{obj.innerTemperature == undefined ? '--' : obj.innerTemperature + '°C'}} <input type="text" v-model="wdxsn" /> <view class="" @click="btnone">校准</view> + <text class="one">箱内温度:{{obj.innerTemperature == undefined ? '--' : obj.innerTemperature + '°C'}}</text> <input type="text" v-model="wdxsn" /> <view class="" @click="btnone">校准</view> </view> <view class="machao"> 箱内湿度:{{obj.innerHumidity == undefined ? '--' : obj.innerHumidity + '%'}} </view> <view class="machao"> - 箱外温度:{{obj.outerTemperature == undefined ? '--' : obj.outerTemperature + '°C'}} <input type="text" v-model="wdxsw" /> <view class="" @click="btntwo">校准</view> + <text class="one">箱外温度:{{obj.outerTemperature == undefined ? '--' : obj.outerTemperature + '°C'}}</text> <input type="text" v-model="wdxsw" /> <view class="" @click="btntwo">校准</view> </view> <view class="machao"> 箱外湿度:{{obj.outerHumidity == undefined ? '--' : obj.outerHumidity + '%'}} @@ -45,14 +44,25 @@ <view class="machao"> 频率:{{obj.volume == undefined ? '--' : (obj.volume / 1000).toFixed(1) + 'KHz'}} </view> - <view class="machao"> - 网络:<text v-if="onlineStatus == '离线'" style="color: red;">离线</text> <text v-if="onlineStatus == '在线'" - style="color: green;">在线</text> - </view> <view class="machao"> 最后在线时间:{{obj.lastOnlineTime == undefined ? '--' : obj.lastOnlineTime}} </view> - + <view class="list" style="bottom: 300rpx;"> + <view class="anniulist"> + <view class="anniu" @click="btnkqjr"> + 开启加热 + </view> + <view class="anniu" @click="btngbjr"> + 关闭加热 + </view> + <view class="anniu" @click="btngnsd"> + 功能锁定 + </view> + <view class="anniu" @click="btngnjs"> + 功能解锁 + </view> + </view> + </view> <view class="list"> <view class="anniulist"> <view class="anniu" @click="btnkq"> @@ -72,10 +82,8 @@ 返回 </view> </view> - </view> </template> - <script> export default { data() { @@ -91,7 +99,9 @@ message: '定时器未启动', intervalId: null, // 用于存储定时器的ID wdxsn:'', - wdxsw:'' + wdxsw:'', + xsN:'', + xsW:'' } }, onLoad(options) { @@ -107,7 +117,6 @@ path: '/pages/shouye/index' } }, - // 分享到朋友圈 onShareTimeline: function() { return { @@ -118,22 +127,95 @@ }, onUnload() { // 页面卸载时清除定时器 - this.clearInterval(); + this.clearInterval() }, onHide() { // 页面隐藏时清除定时器(可选,根据需求决定是否添加) - this.clearInterval(); + this.clearInterval() }, beforeDestroy() { // 组件销毁前清除定时器(可选,根据需求决定是否添加) - this.clearInterval(); + this.clearInterval() }, methods: { + // 点击开启加热 + btnkqjr(){ + this.$u.put(`/app/beehive/admin/heat?sn=${this.storeId}&open=true`).then(res=>{ + if(res.code == 200){ + uni.showToast({ + title:'开启加热成功', + icon: 'success', + duration:2000 + }) + }else{ + uni.showToast({ + title:res.msg, + icon: 'none', + duration:2000 + }) + } + }) + }, + // 点击关闭加热 + btngbjr(){ + this.$u.put(`/app/beehive/admin/heat?sn=${this.storeId}&open=false`).then(res=>{ + if(res.code == 200){ + uni.showToast({ + title:'关闭加热成功', + icon: 'success', + duration:2000 + }) + }else{ + uni.showToast({ + title:res.msg, + icon: 'none', + duration:2000 + }) + } + }) + }, + // 功能锁定 + btngnsd(){ + this.$u.put(`/app/beehive/admin/lock?sn=${this.storeId}&lock=true`).then(res=>{ + if(res.code == 200){ + uni.showToast({ + title:'开启功能锁成功', + icon: 'success', + duration:2000 + }) + }else{ + uni.showToast({ + title:res.msg, + icon: 'none', + duration:2000 + }) + } + }) + }, + // 功能解锁 + btngnjs(){ + this.$u.put(`/app/beehive/admin/lock?sn=${this.storeId}&lock=false`).then(res=>{ + if(res.code == 200){ + uni.showToast({ + title:'关闭功能锁成功', + icon: 'success', + duration:2000 + }) + }else{ + uni.showToast({ + title:res.msg, + icon: 'none', + duration:2000 + }) + } + }) + }, // 内部温度 btnone(){ - this.$u.put(`/app/beehive/admin/wdxsn?sn=${this.storeId}&wdxsn=${this.wdxsn}`).then(res=>{ + let num = Number(this.wdxsn) + Number(this.xsN) + this.$u.put(`/app/beehive/admin/wdxsn?sn=${this.storeId}&wdxsn=${num}`).then(res=>{ if(res.code == 200){ - this.obj.innerTemperature = Number(this.obj.innerTemperature) + Number(this.wdxsn) + this.obj.innerTemperature = Number(this.obj.innerTemperature) + Number(num) }else{ uni.showToast({ title:res.msg, @@ -145,9 +227,10 @@ }, // 外部温度 btntwo(){ - this.$u.put(`/app/beehive/admin/wdxsw?sn=${this.storeId}&wdxsw=${this.wdxsw}`).then(res=>{ + let num = Number(this.wdxsw) + Number(this.xsW) + this.$u.put(`/app/beehive/admin/wdxsw?sn=${this.storeId}&wdxsw=${num}`).then(res=>{ if(res.code == 200){ - this.obj.outerTemperature = Number(this.obj.outerTemperature) + Number(this.wdxsw) + this.obj.outerTemperature = Number(this.obj.outerTemperature) + Number(num) }else{ uni.showToast({ title:res.msg, @@ -166,11 +249,13 @@ // 每五秒执行一次的方法 const timerCallback = () => { if(this.storeId == '' || this.storeId == null || this.obj == null){ - this.clearInterval(); + this.clearInterval() }else{ this.$u.get(`/app/beehive/admin/sn/${this.storeId}?refresh=true`).then(res => { if (res.code == 200) { this.obj = res.data + this.xsW = res.data.xsW + this.xsN = res.data.xsN this.id = res.data.deviceId if (res.data.onlineStatus == 0) { this.onlineStatus = '离线' @@ -187,13 +272,13 @@ } } // 启动定时器,并将ID存储在intervalId中 - this.intervalId = setInterval(timerCallback, 5000); + this.intervalId = setInterval(timerCallback, 5000) }, clearInterval() { // 清除定时器 if (this.intervalId !== null) { - clearInterval(this.intervalId); - this.intervalId = null; + clearInterval(this.intervalId) + this.intervalId = null } }, // 进行扫描二维码获取设备sn @@ -227,10 +312,12 @@ this.$u.get(`/app/beehive/admin/sn/${this.storeId}?refresh=true`).then(res => { if (res.code == 200) { if(res.data == null){ - this.clearInterval(); + this.clearInterval() }else{ this.obj = res.data this.id = res.data.deviceId + this.xsW = res.data.xsW + this.xsN = res.data.xsN if (res.data.onlineStatus == 0) { this.onlineStatus = '离线' } else if (res.data.onlineStatus == 1) { @@ -253,18 +340,16 @@ icon: 'none', duration: 2000, }) - this.clearInterval(); + this.clearInterval() } }) }, - // 返回录入 btnfh() { uni.reLaunch({ url:'/page_user/luru' }) }, - // 开启蜂鸣 btnkq() { this.$u.put(`/app/beehive/admin/buzzer?sn=${this.storeId}`).then((res) => { @@ -333,7 +418,7 @@ this.$u.put(`/app/beehive/iot/${this.storeId}/uploadBySn`).then(res => { this.getsn() if(this.intervalId == null){ - this.startInterval(); + this.startInterval() } }) } @@ -347,16 +432,13 @@ bottom: 50rpx; left: 50%; transform: translateX(-50%); - .anniulist { width: 658rpx; margin: auto; - margin-top: 200rpx; text-align: left; font-size: 32rpx; display: flex; justify-content: space-between; - .anniu { width: 30%; height: 90rpx; @@ -369,7 +451,6 @@ margin: 0 10rpx; } } - .fanhui { width: 658rpx; height: 90rpx; @@ -383,7 +464,6 @@ margin-top: 50rpx; } } - .machao { width: 658rpx; margin: auto; @@ -392,12 +472,16 @@ font-size: 32rpx; display: flex; align-items: center; + .one{ + width: 280rpx; + } input{ width: 100rpx; height: 40rpx; border: 1px solid #ce9e10; margin-left: 50rpx; text-align: center; + border-radius: 10rpx; } view{ margin-left: 20rpx; @@ -408,7 +492,6 @@ border-radius: 10rpx; } } - .title { font-size: 70rpx; font-weight: 600; @@ -417,7 +500,6 @@ margin: auto; margin-top: 30rpx; } - .shuom { width: 658rpx; margin: auto; @@ -425,7 +507,6 @@ text-align: left; font-size: 32rpx; } - .iptbox { display: flex; align-items: center; @@ -437,27 +518,22 @@ background: #FFFFFF; box-shadow: 0rpx 0rpx 8rpx 0rpx rgba(0, 0, 0, 0.15); border-radius: 20rpx 20rpx 20rpx 20rpx; - .qrcode { padding-right: 20rpx; border-right: 2rpx solid #D8D8D8; - image { width: 54rpx; height: 54rpx; } } - .ips { width: 630rpx; } - image { width: 18rpx; height: 32rpx; } - .my-placeholder { font-weight: 400; font-size: 32rpx; diff --git a/page_user/user_set.vue b/page_user/user_set.vue index fe429b2..fb1660e 100644 --- a/page_user/user_set.vue +++ b/page_user/user_set.vue @@ -103,7 +103,7 @@ </view> <view class="tit" style="margin-top: 58rpx;"> <image src="https://api.ccttiot.com/smartmeter/img/static/udbzkOF4S1rNec8U44KT" mode=""></image> - 震动通知 + 震动通知 </view> <view class="tit1"> <image src="https://api.ccttiot.com/smartmeter/img/static/u3I0roygrn4BHJaWAT24" mode=""></image> @@ -242,12 +242,12 @@ this.values = [] this.list.forEach(item => { if (item.checked) { - item.checked = false; + item.checked = false } }) this.lists.forEach(item => { if (item.checked) { - item.checked = false; + item.checked = false } }) } @@ -286,13 +286,13 @@ this.maxCo2 = res.data.maxCo2 this.list.forEach(item => { if (res.data.singleNotice.includes(item.type.toString())) { - item.checked = true; + item.checked = true } }) this.value = res.data.singleNotice this.lists.forEach(item => { if (res.data.multipleNotice.includes(item.type.toString())) { - item.checked = true; + item.checked = true } }) this.values = res.data.multipleNotice diff --git a/pages/Apiary.vue b/pages/Apiary.vue index 64ccd66..7d7015a 100644 --- a/pages/Apiary.vue +++ b/pages/Apiary.vue @@ -50,12 +50,9 @@ </view> </scroll-view> <tab-bar :indexs='1' style=""></tab-bar> - <u-toast ref="uToast" /> - </view> </template> - <script> export default { data() { @@ -76,7 +73,6 @@ }, onShow() { this.pagesum = 1 - // this.list = [] this.ishave() }, methods: { @@ -95,7 +91,6 @@ } }) }, - // 跳转蜂场详情 btnapiaryxq(id) { uni.navigateTo({