// packageE/others/case_library/category/caseLibraryCategory.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    firstCategory: [],
    secondCategory: [],
    first_id: -1,
    second_id: -1,
    list: [],
    page: 1, //分页数，当前页数
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getFirstCategory();
  },

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

  },

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

  },

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

  },

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

  },

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

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    if (this.data.current_page >= this.data.last_page) {
      return;
    } else {
      let pages = this.data.page + 1;
      this.setData({
        page: pages
      });
      this.getMoreData();
    }
  },

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

  },
  getFirstCategory() {
    var that = this;
    let urlStr = app.getNetAddresss('plugin.case-library.api.case.get-all-category');
    app._postNetWork({
      url: urlStr,
      success: function (resdata) {
        var res = resdata.data;
        console.log(res);
        if (res.result == 1) {
          that.setData({
            firstCategory: res.data.firstCategory
          });
          if (res.data.firstCategory.length >= 1) {
            that.changeFirstCategory('', that.data.firstCategory[0].id);
          }
        } else {
          wx.showToast({
            title: res.msg,
            icon: 'none',
            duration: 1000
          });
        }
      },
      fail: function (res) {
        console.log(res);
        wx.hideLoading({
          success: (res) => { },
        });
      }
    });
  },
  changeFirstCategory(e, id) {
    var that = this;
    if (id) {
      this.setData({
        first_id: id
      });
    }
    if (e) {
      console.log(e);
      let kid = e.currentTarget.dataset.id;
      this.setData({
        first_id: kid
      });
    }
    let urlStr = app.getNetAddresss('plugin.case-library.api.mobile.home.cut-first-category');
    app._postNetWork({
      url: urlStr,
      data: {
        pid: that.data.first_id
      },
      success: function (resdata) {
        var res = resdata.data;
        console.log(res);
        if (res.result == 1) {
          that.setData({
            secondCategory: res.data.secondCategory,
            list: res.data.case.data,
            current_page: res.data.case.current_page,
            last_page: res.data.case.last_page,
            second_id: -1
          });
        } else {
          wx.showToast({
            title: res.msg,
            icon: 'none',
            duration: 1000
          });
        }
      },
      fail: function (res) {
        console.log(res);
        wx.hideLoading({
          success: (res) => { },
        });
      }
    });
  },
  changeSecondCategory(e) {
    console.log(e);
    let id = e.currentTarget.dataset.id;
    var that = this;
    let urlStr = app.getNetAddresss('plugin.case-library.api.mobile.home.cut-second-category');
    app._postNetWork({
      url: urlStr,
      data: {
        cid: id
      },
      success: function (resdata) {
        var res = resdata.data;
        console.log(res);
        if (res.result == 1) {
          that.setData({
            list: res.data.case.data,
            current_page: res.data.case.current_page,
            last_page: res.data.case.last_page,
          });
        } else {
          wx.showToast({
            title: res.msg,
            icon: 'none',
            duration: 1000
          });
        }
      },
      fail: function (res) {
        console.log(res);
        wx.hideLoading({
          success: (res) => { },
        });
      }
    });
  },
  getMoreData() {
    var that = this;
    let json = [];
    let urlStr;
    if (this.data.second_id == -1) {
      urlStr = app.getNetAddresss('plugin.case-library.api.mobile.home.cut-first-category');
      json = {
        pid: that.data.first_id,
        page: that.data.page
      };
    } else {
      urlStr = app.getNetAddresss('plugin.case-library.api.mobile.home.cut-second-category');
      json = {
        cid: that.data.second_id,
        page: that.data.page
      };
    }

    app._postNetWork({
      url: urlStr,
      data: json,
      success: function (resdata) {
        var res = resdata.data;
        if (res.result == 1) {
          var nextPageData = res.data.case.data;
          that.setData({
            list: that.data.list.concat(nextPageData),
            current_page: res.data.case.current_page,
            last_page: res.data.case.last_page,
          });
        } else {
          wx.showToast({
            title: res.msg,
            icon: 'none',
            duration: 1000
          });
        }
      },
      fail: function (res) {
        console.log(res);
        wx.hideLoading({
          success: (res) => { },
        });
      }
    });
  }
});