// pages/wangdian/wangdian.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() {
    wx.request({
      url: 'https://t-jm.v0750.com/miniprogram/branch/detail',
      data: {
        number: this.data.number,
        latitude: wx.getStorageSync('latitude'),
        longitude: wx.getStorageSync('longitude'),
      },
      method: 'GET',
      success: (res) => {
        if (res.data && res.data.code == 200) {
          this.setData({
            banner: res.data.data.banner || [],
            info: res.data.data.info || {}
          });
        }
      }
    });
  },

  // 获取机器列表
  getMachineList() {
    wx.request({
      url: 'https://t-jm.v0750.com/miniprogram/branch/machine',
      data: {
        number: this.data.number,
      },
      method: 'POST',
      success: (res) => {
        if (res.data && res.data.code == 200) {
          this.setData({
            jiqilist: res.data.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
          });

        }
      }
    });
  },
})