// pages/system/system.js Page({ /** * 页面的初始数据 */ data: { dates:"",//日期 times:"",//时间 Illuminance:"",//光照度 Firealarmtext:"",//消防报警文字 Firealarmcolor:"",//消防报警颜色 longitude:"",//经度 latitude:"",//纬度 Sunrisetime:"",//日出时间 Sunsettime:"",//日落时间 array: ['0', '1', '2', '3','4','5','6','7','8','9','10', '11', '12', '13', '14','15','16','17','18','19','20'],//开关延时 index: 0, switchtime:0, multiItems: [[], []],//经度显示 multiIndex: [0, 0], multiItems2:[[],[]],//纬度显示 multiIndex2:[0,0], Title:"", statu:"false", status:"离线", loops:"",//记录回路数量 Storage:[],//储存发送数据 Modecontrol:"", groupName:[], deviceName:[], groupIndex:0, deviceIndex:0, deviceId:'', deviceKey:'', }, //开关延时 bindPickerChange: function(e) { this.setData({ index: e.detail.value, }) }, //分组下拉 changegroup:function(e){ var that = this that.setData({ groupIndex:e.detail.value }) wx.setStorageSync('groupIndex', e.detail.value) var groupName = that.data.groupName[that.data.groupIndex]//选择的分组名称 wx.setStorageSync('groupName',groupName)//将修改的分组名称放入缓存 //获取设备名称下拉 var group = wx.getStorageSync('group') var deviceName = that.data.deviceName var deviceName = [] for(let i = 0;i < group.length;i++){ if(group[i].groupName == groupName){ if(group[i].devices != null){ wx.showToast({ title:'刷新中', icon:'loading', duration: 2000 }) for(let j = 0;j < group[i].devices.length;j++){ deviceName.push(group[i].devices[j].deviceName) } } else{ wx.showModal({ title:'提示', content:'工程中不存在设备', showCancel:false }) console.log('系统分组下拉到没有设备的工程') that.setData({status:'离线'}) } } } this.setData({ deviceName:deviceName }) //重新获取设备id和key if(that.data.deviceName.length != 0){ var groupNames = that.data.groupName[that.data.groupIndex] var deviceNames = that.data.deviceName[that.data.deviceIndex] for(let d = 0;d < group.length;d++){ if(groupNames == group[d].groupName){ for(let g = 0;g < group[d].devices.length;g++){ if(deviceNames == group[d].devices[g].deviceName){ var deviceId = group[d].devices[g].deviceId var deviceKey = group[d].devices[g].deviceKey } } } } wx.setStorageSync('deviceName',deviceNames)//将修改设备名放入缓存 that.setData({ deviceId:deviceId, deviceKey:deviceKey }) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId, method:'GET', header:{"api-key": deviceKey}, success:(res) =>{ if (res.data.data.online == true) { that.setData({ status:"在线" }) } else{ that.setData({ status:"离线" }) } } }) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId + '/datastreams', header:{"api-key": deviceKey}, method:'GET', success: function(res){ let {data} = res.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } //光照度 else if(data[i].id == "lightLuxValue"){ var Illuminance = data[i].current_value } //日出时间 else if(data[i].id == "RiseTime"){ var Sunrisetime = data[i].current_value } //日落时间 else if(data[i].id == "SetTime"){ var Sunsettime = data[i].current_value } //经度 else if(data[i].id == "Longitude"){ var longitude = data[i].current_value } //纬度 else if(data[i].id == "Latitude"){ var latitude = data[i].current_value } //消防报警 else if(data[i].id == "AlarmState"){ var Firealarm = data[i].current_value } //回路数量 else if(data[i].id == "RelayCount"){ var loops = data[i].current_value } //开关延时 else if (data[i].id == "DeviceID") { var device = data[i].current_value that.setData({index:device,switchtime:device}) } } //时间 if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) //日出时间 var c = Sunrisetime.substring(0,1) + ':' + Sunrisetime.substring(1,3) //日落时间 var d = Sunsettime.substring(0,2) + ':' + Sunsettime.substring(2,4) //经度 var multiIndex =that.data.multiIndex if (longitude.length == 5) { var e = longitude.substring(0,3) + "," + longitude.substring(3,5) + "'" multiIndex[0] = parseInt(longitude.substring(0,3)) multiIndex[1] = parseInt(longitude.substring(3,5)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 4){ var e = longitude.substring(0,2) + "," + longitude.substring(2,4) + "'" multiIndex[0] = parseInt(longitude.substring(0,2)) multiIndex[1] = parseInt(longitude.substring(2,4)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 3){ var e = longitude.substring(0,1) + "," + longitude.substring(1,3) + "'" multiIndex[0] = parseInt(longitude.substring(0,1)) multiIndex[1] = parseInt(longitude.substring(1,3)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 2){ var e = 0 + "," + longitude.substring(0,2) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,2)) that.setData({ multiIndex:multiIndex }) } else{ var e = 0 + "," + longitude.substring(0,1) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,1)) that.setData({ multiIndex:multiIndex }) } //纬度 var multiIndex2 = that.data.multiIndex2 if (latitude.length == 5) { var f = latitude.substring(0,3) + "," + latitude.substring(3,5) + "'" multiIndex2[0] = parseInt(latitude.substring(0,3)) multiIndex2[1] = parseInt(latitude.substring(3,5)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 4){ var f = latitude.substring(0,2) + "," + latitude.substring(2,4) + "'" multiIndex2[0] = parseInt(latitude.substring(0,2)) multiIndex2[1] = parseInt(latitude.substring(2,4)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 3){ var f = latitude.substring(0,1) + "," + latitude.substring(1,3) + "'" multiIndex2[0] = parseInt(latitude.substring(0,1)) multiIndex2[1] = parseInt(latitude.substring(1,3)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 2){ var f = 0 + "," + latitude.substring(0,2) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,2)) that.setData({ multiIndex2:multiIndex2 }) } else{ var f = 0 + "," + latitude.substring(0,1) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,1)) that.setData({ multiIndex2:multiIndex2 }) } //光照度 var g = Illuminance //消防报警 if(Firealarm == "0"){ that.setData({ Firealarmtext:"正常", Firealarmcolor:"#5cfe03" }) } else{ that.setData({ Firealarmtext:"异常", Firealarmcolor:"red" }) } that.setData({ times:a, dates:b, Sunrisetime:c, Sunsettime:d, longitude:e, latitude:f, Illuminance:g, loops:loops, }) } }) } else{ wx.setStorageSync('deviceName','')//清空设备名称缓存 } }, //设备下拉 changedevice:function(e){ var that = this wx.showToast({ title:'刷新中', icon:'loading', duration: 2000 }) that.setData({ deviceIndex:e.detail.value }) var group = wx.getStorageSync('group') var groupName = that.data.groupName[that.data.groupIndex] var deviceName = that.data.deviceName[that.data.deviceIndex] wx.setStorageSync('groupName', groupName)//分组名称 wx.setStorageSync('deviceName', deviceName)//设备名称 for (let index = 0; index < group.length; index++) { if(groupName == group[index].groupName){ for(let t = 0;t < group[index].devices.length;t++){ if(deviceName == group[index].devices[t].deviceName){ var deviceId = group[index].devices[t].deviceId var deviceKey = group[index].devices[t].deviceKey } } } } that.setData({ deviceId:deviceId, deviceKey:deviceKey }) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId, method:'GET', header:{"api-key": deviceKey}, success:(res) =>{ if (res.data.data.online == true) { that.setData({ status:"在线" }) } else{ that.setData({ status:"离线" }) } } }) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId + '/datastreams', header:{"api-key": deviceKey}, method:'GET', success: function(res){ let {data} = res.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } //光照度 else if(data[i].id == "lightLuxValue"){ var Illuminance = data[i].current_value } //日出时间 else if(data[i].id == "RiseTime"){ var Sunrisetime = data[i].current_value } //日落时间 else if(data[i].id == "SetTime"){ var Sunsettime = data[i].current_value } //经度 else if(data[i].id == "Longitude"){ var longitude = data[i].current_value } //纬度 else if(data[i].id == "Latitude"){ var latitude = data[i].current_value } //消防报警 else if(data[i].id == "AlarmState"){ var Firealarm = data[i].current_value } //回路数量 else if(data[i].id == "RelayCount"){ var loops = data[i].current_value } //开关延时 else if (data[i].id == "DeviceID") { var device = data[i].current_value that.setData({index:device,switchtime:device}) } } //时间 if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) //日出时间 var c = Sunrisetime.substring(0,1) + ':' + Sunrisetime.substring(1,3) //日落时间 var d = Sunsettime.substring(0,2) + ':' + Sunsettime.substring(2,4) //经度 var multiIndex =that.data.multiIndex if (longitude.length == 5) { var e = longitude.substring(0,3) + "," + longitude.substring(3,5) + "'" multiIndex[0] = parseInt(longitude.substring(0,3)) multiIndex[1] = parseInt(longitude.substring(3,5)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 4){ var e = longitude.substring(0,2) + "," + longitude.substring(2,4) + "'" multiIndex[0] = parseInt(longitude.substring(0,2)) multiIndex[1] = parseInt(longitude.substring(2,4)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 3){ var e = longitude.substring(0,1) + "," + longitude.substring(1,3) + "'" multiIndex[0] = parseInt(longitude.substring(0,1)) multiIndex[1] = parseInt(longitude.substring(1,3)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 2){ var e = 0 + "," + longitude.substring(0,2) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,2)) that.setData({ multiIndex:multiIndex }) } else{ var e = 0 + "," + longitude.substring(0,1) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,1)) that.setData({ multiIndex:multiIndex }) } //纬度 var multiIndex2 = that.data.multiIndex2 if (latitude.length == 5) { var f = latitude.substring(0,3) + "," + latitude.substring(3,5) + "'" multiIndex2[0] = parseInt(latitude.substring(0,3)) multiIndex2[1] = parseInt(latitude.substring(3,5)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 4){ var f = latitude.substring(0,2) + "," + latitude.substring(2,4) + "'" multiIndex2[0] = parseInt(latitude.substring(0,2)) multiIndex2[1] = parseInt(latitude.substring(2,4)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 3){ var f = latitude.substring(0,1) + "," + latitude.substring(1,3) + "'" multiIndex2[0] = parseInt(latitude.substring(0,1)) multiIndex2[1] = parseInt(latitude.substring(1,3)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 2){ var f = 0 + "," + latitude.substring(0,2) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,2)) that.setData({ multiIndex2:multiIndex2 }) } else{ var f = 0 + "," + latitude.substring(0,1) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,1)) that.setData({ multiIndex2:multiIndex2 }) } //光照度 var g = Illuminance //消防报警 if(Firealarm == "0"){ that.setData({ Firealarmtext:"正常", Firealarmcolor:"#5cfe03" }) } else{ that.setData({ Firealarmtext:"异常", Firealarmcolor:"red" }) } that.setData({ times:a, dates:b, Sunrisetime:c, Sunsettime:d, longitude:e, latitude:f, Illuminance:g, loops:loops, }) } }) }, //校准时间 Calibrationtime:function(){ wx.showToast({ title:'校准中', icon:'loading', duration: 2000 }) var that = this var myDate = new Date(); //年 var year = myDate.getFullYear().toString() year = year.slice(2,4) //月 var month = myDate.getMonth() + 1 month = month.toString() if(month.length == 1){ month = '0' + month } //日 var date = myDate.getDate() date = date.toString() if(date.length == 1){ date = '0' + date } //小时 var hour = myDate.getHours() hour = hour.toString() if(hour.length == 1){ hour = '0' + hour } //分钟 var minutes = myDate.getMinutes() minutes = minutes.toString() if(minutes.length == 1){ minutes = '0' + minutes } //秒 var seconds = myDate.getSeconds() seconds = seconds.toString() if(seconds.length == 1){ seconds = '0' + seconds } var datas = year + month + date datas = parseInt(datas) var time = hour + minutes + seconds time = parseInt(time) wx.request({   url: "https://api.heclouds.com/cmds?device_id=" + that.data.deviceId,   method: 'POST',   header: {     "api-key": that.data.deviceKey   },   data: { "SysTime":time, "SysDate":datas,     "Reflash": 4 //刷新设备当前时间,并且将设备当前时间上传   },   success(res) { setTimeout(function(){ wx.request({ url: 'https://api.heclouds.com/devices/' + that.data.deviceId + '/datastreams', method:'GET', header:{"api-key": that.data.deviceKey}, success:ever =>{ let {data} = ever.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } } if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) that.setData({ times:a, dates:b }) } }) },2000)   }, }) }, //经度调整 handleMulti(e){ this.setData({ multiIndex : e.detail.value }) }, //纬度调整 handleMulti2(e){ this.setData({ multiIndex2 : e.detail.value }) }, //刷新页面 RefreshPage:function(){ wx.showToast({ title:'刷新中', icon:'loading', duration: 2000 }) var that = this wx.request({ url: 'https://api.heclouds.com/devices/' + that.data.deviceId + '/datastreams', header: {"api-key": that.data.deviceKey}, method:'GET', success: function(res){ let {data} = res.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } //光照度 else if(data[i].id == "lightLuxValue"){ var Illuminance = data[i].current_value } //日出时间 else if(data[i].id == "RiseTime"){ var Sunrisetime = data[i].current_value } //日落时间 else if(data[i].id == "SetTime"){ var Sunsettime = data[i].current_value } //经度 else if(data[i].id == "Longitude"){ var longitude = data[i].current_value } //纬度 else if(data[i].id == "Latitude"){ var latitude = data[i].current_value } //消防报警 else if(data[i].id == "AlarmState"){ var Firealarm = data[i].current_value } //回路数量 else if(data[i].id == "RelayCount"){ var loops = data[i].current_value } //开关延时 else if (data[i].id == "DeviceID") { var device = data[i].current_value that.setData({index:device,switchtime:device}) } } //时间 if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) //日出时间 var c = Sunrisetime.substring(0,1) + ':' + Sunrisetime.substring(1,3) //日落时间 var d = Sunsettime.substring(0,2) + ':' + Sunsettime.substring(2,4) //经度 var multiIndex =that.data.multiIndex if (longitude.length == 5) { var e = longitude.substring(0,3) + "," + longitude.substring(3,5) + "'" multiIndex[0] = parseInt(longitude.substring(0,3)) multiIndex[1] = parseInt(longitude.substring(3,5)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 4){ var e = longitude.substring(0,2) + "," + longitude.substring(2,4) + "'" multiIndex[0] = parseInt(longitude.substring(0,2)) multiIndex[1] = parseInt(longitude.substring(2,4)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 3){ var e = longitude.substring(0,1) + "," + longitude.substring(1,3) + "'" multiIndex[0] = parseInt(longitude.substring(0,1)) multiIndex[1] = parseInt(longitude.substring(1,3)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 2){ var e = 0 + "," + longitude.substring(0,2) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,2)) that.setData({ multiIndex:multiIndex }) } else{ var e = 0 + "," + longitude.substring(0,1) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,1)) that.setData({ multiIndex:multiIndex }) } //纬度 var multiIndex2 = that.data.multiIndex2 if (latitude.length == 5) { var f = latitude.substring(0,3) + "," + latitude.substring(3,5) + "'" multiIndex2[0] = parseInt(latitude.substring(0,3)) multiIndex2[1] = parseInt(latitude.substring(3,5)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 4){ var f = latitude.substring(0,2) + "," + latitude.substring(2,4) + "'" multiIndex2[0] = parseInt(latitude.substring(0,2)) multiIndex2[1] = parseInt(latitude.substring(2,4)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 3){ var f = latitude.substring(0,1) + "," + latitude.substring(1,3) + "'" multiIndex2[0] = parseInt(latitude.substring(0,1)) multiIndex2[1] = parseInt(latitude.substring(1,3)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 2){ var f = 0 + "," + latitude.substring(0,2) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,2)) that.setData({ multiIndex2:multiIndex2 }) } else{ var f = 0 + "," + latitude.substring(0,1) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,1)) that.setData({ multiIndex2:multiIndex2 }) } //光照度 var g = Illuminance //消防报警 if(Firealarm == "0"){ that.setData({ Firealarmtext:"正常", Firealarmcolor:"#5cfe03" }) } else{ that.setData({ Firealarmtext:"异常", Firealarmcolor:"red" }) } that.setData({ times:a, dates:b, Sunrisetime:c, Sunsettime:d, longitude:e, latitude:f, Illuminance:g, loops:loops, }) } }) wx.request({   url: "https://api.heclouds.com/cmds?device_id=" + that.data.deviceId,   method: 'POST',   header: {     "api-key": that.data.deviceKey   },   data: {     "Reflash": 4 //刷新设备当前时间,并且将设备当前时间上传   },   success(res) { setTimeout(function(){ wx.request({ url: 'https://api.heclouds.com/devices/' + that.data.deviceId + '/datastreams', method:'GET', header:{"api-key": that.data.deviceKey}, success:ever =>{ let {data} = ever.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } } if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) that.setData({ times:a, dates:b }) } }) },2000)   }, }) }, //存储数据 Storedata: function(){ wx.showToast({ title:'存储数据中', icon:'success', duration: 2000 }) var that = this var switchtime = that.data.array[that.data.index] switchtime = parseInt(switchtime) //经度 var longitude var longitude1 = that.data.multiItems[0][that.data.multiIndex[0]] var longitude2 = that.data.multiItems[1][that.data.multiIndex[1]] if(longitude1 == 0){ longitude = longitude2 } else{ longitude1 = longitude1 + '' longitude2 = longitude2 + '' if(longitude2.length == 2){ longitude = longitude1 + longitude2 longitude =parseInt(longitude) } else{ longitude = longitude1 + '0' +longitude2 longitude =parseInt(longitude) } } //纬度 var latitude var latitude1 = that.data.multiItems2[0][that.data.multiIndex2[0]] var latitude2 = that.data.multiItems2[1][that.data.multiIndex2[1]] if(latitude1 == 0){ latitude = latitude2 } else{ latitude1 = latitude1 + '' latitude2 = latitude2 + '' if(latitude2.length == 2){ latitude = latitude1 + latitude2 latitude =parseInt(latitude) } else{ latitude = latitude1 + '0' +latitude2 latitude =parseInt(latitude) } } if(that.data.status == "在线"){ wx.request({ url: 'https://api.heclouds.com/cmds?device_id=' + that.data.deviceId, method:'POST', header:{"api-key":that.data.deviceKey}, data:{ "DeviceID":switchtime, "Longitude":longitude, "Latitude":latitude, "Reflash":0, }, success:function(res){ that.setData({switchtime:switchtime}) } }) } else{ wx.showModal({ title:'提示', content:'存储数据失败,请检查设备是否在线或者刷新页面', showCancel:false, }) } }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { wx.showToast({ title:'刷新数据中', icon:'loading', duration: 2000 }) var that = this //经度显示 var pt = [[],[]] for(let i = 0;i <180;i++){ pt[0].push(i) } for(let j = 0;j < 59;j++){ pt[1].push(j) } that.setData({ multiItems:pt }) //纬度显示 var pt1 = [[],[]] for(let i = 0;i <180;i++){ pt1[0].push(i) } for(let j = 0;j < 59;j++){ pt1[1].push(j) } that.setData({ multiItems2:pt }) var group = wx.getStorageSync('group') //获取分组下拉 var groups = [] for(let i = 0;i < group.length;i++){ groups.push(group[i].groupName) } that.setData({ groupName:groups }) //改变分组下标 if(wx.getStorageSync('groupName') != ''){ let GroupName = that.data.groupName for(let n = 0;n < GroupName.length;n++){ if(GroupName[n] == wx.getStorageSync('groupName')){ that.setData({ groupIndex:n }) } } } else{ wx.setStorageSync('groupName',that.data.groupName[that.data.groupIndex]) } //获取设备下拉 var groupName = that.data.groupName var groupIndex = that.data.groupIndex var device = [] for(let j = 0;j < group.length;j++){ if(groupName[groupIndex] == group[j].groupName){ if(group[j].devices != null && group[j].devices.length != 0){ for(let p = 0;p < group[j].devices.length;p++){ device.push(group[j].devices[p].deviceName) } that.setData({deviceName:device}) if(wx.getStorageSync('deviceName') != ''){ var DeviceName = that.data.deviceName for(let m = 0;m < DeviceName.length;m++){ if(DeviceName[m] == wx.getStorageSync('deviceName')){ that.setData({ deviceIndex:m }) } } } else{ wx.setStorageSync('deviceName', that.data.deviceName[that.data.deviceIndex]) } //根据分组名和设备名获取key和id var groupNames = that.data.groupName[that.data.groupIndex] var deviceNames = that.data.deviceName[that.data.deviceIndex] for(let d = 0;d < group.length;d++){ if(groupNames == group[d].groupName){ for(let g = 0;g < group[d].devices.length;g++){ if(deviceNames == group[d].devices[g].deviceName){ var deviceId = group[d].devices[g].deviceId var deviceKey = group[d].devices[g].deviceKey } } } } that.setData({deviceId:deviceId,deviceKey:deviceKey}) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId, method:'GET', header:{"api-key": deviceKey}, success:(res) =>{ if (res.data.data.online == true) { that.setData({ status:"在线" }) } else{ that.setData({ status:"离线" }) } } }) wx.request({ url: 'https://api.heclouds.com/devices/' + deviceId + '/datastreams', header: {"api-key": deviceKey}, method:'GET', success: function(res){ let {data} = res.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } else if (data[i].id == "RelayCount") { var quantity = data[i].current_value that.setData({ loops:quantity }) } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } //光照度 else if(data[i].id == "lightLuxValue"){ var Illuminance = data[i].current_value } //日出时间 else if(data[i].id == "RiseTime"){ var Sunrisetime = data[i].current_value } //日落时间 else if(data[i].id == "SetTime"){ var Sunsettime = data[i].current_value } //经度 else if(data[i].id == "Longitude"){ var longitude = data[i].current_value } //纬度 else if(data[i].id == "Latitude"){ var latitude = data[i].current_value } //消防报警 else if(data[i].id == "AlarmState"){ var Firealarm = data[i].current_value } //回路数量 else if(data[i].id == "RelayCount"){ var loops = data[i].current_value } //开关延时 else if (data[i].id == "DeviceID") { var device = data[i].current_value that.setData({index:device,switchtime:device}) } } //时间 if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) //日出时间 var c = Sunrisetime.substring(0,1) + ':' + Sunrisetime.substring(1,3) //日落时间 var d = Sunsettime.substring(0,2) + ':' + Sunsettime.substring(2,4) //经度 var multiIndex =that.data.multiIndex if (longitude.length == 5) { var e = longitude.substring(0,3) + "," + longitude.substring(3,5) + "'" multiIndex[0] = parseInt(longitude.substring(0,3)) multiIndex[1] = parseInt(longitude.substring(3,5)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 4){ var e = longitude.substring(0,2) + "," + longitude.substring(2,4) + "'" multiIndex[0] = parseInt(longitude.substring(0,2)) multiIndex[1] = parseInt(longitude.substring(2,4)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 3){ var e = longitude.substring(0,1) + "," + longitude.substring(1,3) + "'" multiIndex[0] = parseInt(longitude.substring(0,1)) multiIndex[1] = parseInt(longitude.substring(1,3)) that.setData({ multiIndex:multiIndex }) } else if(longitude.length == 2){ var e = 0 + "," + longitude.substring(0,2) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,2)) that.setData({ multiIndex:multiIndex }) } else{ var e = 0 + "," + longitude.substring(0,1) + "'" multiIndex[0] = 0 multiIndex[1] = parseInt(longitude.substring(0,1)) that.setData({ multiIndex:multiIndex }) } //纬度 var multiIndex2 = that.data.multiIndex2 if (latitude.length == 5) { var f = latitude.substring(0,3) + "," + latitude.substring(3,5) + "'" multiIndex2[0] = parseInt(latitude.substring(0,3)) multiIndex2[1] = parseInt(latitude.substring(3,5)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 4){ var f = latitude.substring(0,2) + "," + latitude.substring(2,4) + "'" multiIndex2[0] = parseInt(latitude.substring(0,2)) multiIndex2[1] = parseInt(latitude.substring(2,4)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 3){ var f = latitude.substring(0,1) + "," + latitude.substring(1,3) + "'" multiIndex2[0] = parseInt(latitude.substring(0,1)) multiIndex2[1] = parseInt(latitude.substring(1,3)) that.setData({ multiIndex2:multiIndex2 }) } else if(latitude.length == 2){ var f = 0 + "," + latitude.substring(0,2) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,2)) that.setData({ multiIndex2:multiIndex2 }) } else{ var f = 0 + "," + latitude.substring(0,1) + "'" multiIndex2[0] = 0 multiIndex2[1] = parseInt(latitude.substring(0,1)) that.setData({ multiIndex2:multiIndex2 }) } //光照度 var g = Illuminance //消防报警 if(Firealarm == "0"){ that.setData({ Firealarmtext:"正常", Firealarmcolor:"#5cfe03" }) } else{ that.setData({ Firealarmtext:"异常", Firealarmcolor:"red" }) } that.setData({ times:a, dates:b, Sunrisetime:c, Sunsettime:d, longitude:e, latitude:f, Illuminance:g, loops:loops, }) } }) wx.request({   url: "https://api.heclouds.com/cmds?device_id=" + deviceId,   method: 'POST',   header: {     "api-key": deviceKey   },   data: {     "Reflash": 4 //刷新设备当前时间,并且将设备当前时间上传   },   success(res) { setTimeout(function(){ wx.request({ url: 'https://api.heclouds.com/devices/' + that.data.deviceId + '/datastreams', method:'GET', header:{"api-key": that.data.deviceKey}, success:ever =>{ let {data} = ever.data for(let i = 0; i < data.length; i++){ //时间 if (data[i].id == "SysTime") { var times = data[i].current_value } //日期 else if(data[i].id == "SysDate"){ var dates = data[i].current_value } } if(times.length == 5){ var a = "0" + times.substring(0,1) + ':' + times.substring(1,3) + ':' + times.substring(3,5) } else if(times.length == 6){ var a =times.substring(0,2) + ':' + times.substring(2,4) + ':' + times.substring(4,6) } else{ a = times } //日期 var b ='20' + dates.substring(0,2) + '-' + dates.substring(2,4) + '-' + dates.substring(4,6) that.setData({ times:a, dates:b }) } }) },2000)   }, }) } else{ that.setData({status:'离线',deviceName:[]}) } } } }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })