import { get, post } from '../../utils/http'
const app = getApp()
Page({
  /**
   * 页面的初始数据
   */
  data: {
    value: '',
    total: 0,
    page: 1,
    list: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    let defaultStore = {}
    if (options.defaultStore) {
      defaultStore = JSON.parse(options.defaultStore)
    }
    if (Object.keys(defaultStore).length == 0) {
      defaultStore = app.globalData.storeData
    }
    this.setData({
      defaultStore: defaultStore
    })
    this.getStore()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {},

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {},

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {},

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {},

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {},

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    if (this.data.page * 10 < this.data.total) {
      this.getStore(++this.data.page)
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {},

  /**
   * 清除搜索文本
   */
  onClear() {
    this.setData({
      value: ''
    })
  },

  /**
   * 选中店铺
   */
  onChangeStore(e) {
    let pages = getCurrentPages()
    let prevPage = pages[pages.length - 2]
    let storeId = e.currentTarget.dataset.item.id
    prevPage.getStoreInfo(storeId)
    // prevPage.setData({
    //   location: e.currentTarget.dataset.item
    // })
    get(
      'api/store/info',
      { 
        store_id: storeId
      },
      (res) => {
        wx.setStorageSync('store_id', String(storeId))
        app.globalData.storeData = res.data
        wx.navigateBack({
          delta: 1
        })
      }
    )
  },

  /**
   * 监听键盘输入
   */
  onChange(e) {
    this.setData({ value: e.detail.value })
  },

  /**
   * 搜索店铺
   */
  onConfirm() {
    this.getStore(1)
  },

  /**
   * 获取店铺接口
   * /api/store
   */
  getStore(_page) {
    let { list, current, page } = this.data
    get(
      'api/store',
      {
        page: _page || page,
        limit: 10,
        keyword: this.data.value
      },
      (res) => {
        if (_page == 1 || page == 1) {
          list = []
          this.data.page = 1
        }
        list.push(...res.data.list)
        this.setData({ list, total: res.data.total })
        console.log(res,'重复')
      }
    )
  },

  /**
   * 打卡地图
   */
  onOpenLocation() {
    let store = this.data.defaultStore
    let latitude = parseFloat(store.latitude)
    let longitude = parseFloat(store.longitude)
    wx.openLocation({
      latitude: parseFloat(store.latitude), // 纬度，范围为-90~90，负数表示南纬
      longitude: parseFloat(store.longitude), // 经度，范围为-180~180，负数表示西经
      name: store.belong_region
    })
  }
})
