// pages/userCenter.js
const app = getApp()
const wxService = require('../../utils/wxService')
const utils = require('../../utils/util')
const envInfo = require('../../config/index').envInfo
let renderPage = null // 渲染页面数据对象(安全渲染)
let handlerDataOnPage = null
const logger = utils.logger

wxService.page({
  /**
   * 页面的初始数据
   */
  data: {
    pages:[],
    render: null, // 渲染页面数据对象(安全渲染)
    renderPageOver: false, // 渲染页面结束
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData(
      {
        pages: [],
        groupLoadState: 'complete', // 活动分组加载标志
        homeApiLoading: true,
        render: null, // 渲染页面数据对象(安全渲染)
        isLastPage: false, // 页面段落加载完成
        renderPageOver: false // 渲染页面结束
      },
      () => {
        // this.loadMore()
      }
    )
    handlerDataOnPage = new utils.HandlerDataOnPage()
    renderPage = require('../../utils/renderPage').getRenderPage()
    handlerDataOnPage.init(this, 'pages')
    
    this.getDeliveryServiceList()
  },

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

  },
  getDeliveryServiceList() {
    this.setData({
      products: []
    })
    wx.showLoading({
      title: '加载中'
    })
    wxService.post(`/merchant/modelPage/getDetailById?pageId=4&brandId=${app.globalData.brandId}`).then(res => {
      if(!res) return false
      const {result,data} = res.data
      if(result == 0){
        // 动态设置title
        wx.setNavigationBarTitle({
          title: data.page.title
        })
        // 段落
        const products = data.paragraphs
        const filterResult = products.map((res,index)=>{
          return {
            ...res,index
          }
        }).filter(item=> {
          // wx.hideLoading()
        })
        const render = renderPage.initPaging(filterResult).initRenderData(products)
        this.data.render = render
        const renderData = render.next()
        this.data.renderPageOver = renderData.done
        this.renderPageFunc({ products: renderData.value })
      }
    }).finally(() => {
      wx.hideLoading();
    })
  },
  /**
	 * 渲染数据(合并之前的数据)
	 * @param products 数组数据
	 * @param isLastPage
	 * @param now
	 */
  renderPageFunc ({ products }) {
    let productData = handlerDataOnPage.handlerArray(products)
    logger.log('productData.keysNum', productData.keysNum(), productData)
    
      this.setData({
        ...productData
      },()=>{
        wx.hideLoading()
      })
 
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow () {},

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

  },

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

  },

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

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

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

  }
})