// pages/wangdian/wangdian.js var t = require("../../utils/login.js"); Page({ /** * 页面的初始数据 */ data: { banner: [], info: {}, jiqilist: [], number: '', machineCount: 0, freeMachineCount: 0, timer: null, }, onLoad(options) { // 如果没有wx.getStorageSync('latitude') 或者 wx.getStorageSync('longitude') 则获取当前位置 if (!wx.getStorageSync('latitude') || !wx.getStorageSync('longitude')) { wx.getLocation({ type: 'wgs84', success: (res) => { wx.setStorageSync('latitude', res.latitude); wx.setStorageSync('longitude', res.longitude); this.getBranchDetail(); } }); } this.setData({ number: options.number || '' }); this.getBranchDetail(); this.getMachineList(); // 设置定时器,每10秒刷新一次机器状态 this.data.timer = setInterval(() => { this.getMachineList(); }, 10000); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { // 页面卸载时清除定时器 if (this.data.timer) { clearInterval(this.data.timer); this.data.timer = null; } }, /** * 生命周期函数--监听页面卸载 */ onUnload() { // 页面卸载时清除定时器 if (this.data.timer) { clearInterval(this.data.timer); this.data.timer = null; } }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, // 获取网点详情信息 getBranchDetail() { t.request('/miniprogram/branch/detail', { number: this.data.number, latitude: wx.getStorageSync('latitude'), longitude: wx.getStorageSync('longitude'), method: 'GET', }, !0).then((res) => { if (res.code == 200) { this.setData({ banner: res.data.banner || [], info: res.data.info || {}, }); } }) }, // 获取机器列表 getMachineList() { t.request('/miniprogram/branch/machine', { number: this.data.number, }).then((res) => { if (res.code == 200) { this.setData({ jiqilist: res.data || [], }); // 计算机器数量, 与空闲机器数量 free machine let machineCount = this.data.jiqilist.length; let freeMachineCount = 0; for (let i = 0; i < this.data.jiqilist.length; i++) { if (this.data.jiqilist[i].devicestatus == 0) { freeMachineCount++; } } // 更新数据 this.setData({ machineCount, freeMachineCount }); } }) }, })