// pages/contest/contest.js
import {
  imine
} from '../../../api/api.js'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    sexList: [{label:'男',value:1},{label:'女',value:2}],
    form: {},
    areaList: [],
    sortList: [
      {name:'actualName',title:'姓名'},
      {name:'sex',title:'性别'},
      {name:'age',title:'年龄'},
      {name:'area',title:'区域'},
      {name:'school',title:'学校'},
      {name:'grade',title:'年级'}
    ],
    jgList: [true,true,true,true,true,true]
  },

  changeInput (e) {
    const id = e.currentTarget.id;
    let value = (id === 'age' ? e.detail.value.replace(/\D/g, '')-0 : e.detail.value)
    this.setData({
      ['form.'+id]: value
    })
  },

  bindAddrChange (e) {
    const id = e.currentTarget.id;
    const value = e.detail.value
    this.setData({
      ['form.'+id]: value.join(' ')
    })
  },

  bindPickerSex (e) {
    const id = e.currentTarget.id;
    const value = e.detail.value
    this.setData({
      ['form.'+id]: this.data.sexList[value].value
    })
  },

  bindPickerSchool (e) {
    const id = e.currentTarget.id;
    const value = e.detail.value
    this.setData({
      ['form.'+id]: this.data.areaList[value].id,
      ['form.schoolName']: this.data.schoolList[value].schoolName
    })
  },

  bindPickerChange(e) {
    const id = e.currentTarget.id;
    const value = e.detail.value
    this.setData({
      ['form.'+id]: this.data.areaList[value].id,
      ['form.areaName']: this.data.areaList[value].areaName
    }, () => {
      imine.querySchoolByAreaId({reqdata:{
        id: this.data.form[id]
      }},r => {
        this.setData({
          schoolList: r.list,
          ['form.school']: null
        })
      })
    })
  },

  submit (e) {
    let {actualName,sex,age,area,grade,other,school} = this.data.form
    let {sortList} = this.data
    this.setData({
      jgList: sortList.map(item => !!this.data.form[item.name])
    }, () => {
      if (!sortList.every(item => this.data.form[item.name])) {
        console.log(this.data.jgList);
        return
      }
      let id = wx.getStorageSync('id')
      imine.updateUser({reqdata:{actualName,sex,age,area,grade,other,school,id}},r => {
        this.loadMyinformation()
        wx.navigateTo({
          url: '/pages/contest/answer/answer'
        })
      })
    })
  },

  queryAllArea () {
    imine.queryAllArea({},r => {
      this.setData({
        areaList: r.list
      })
    })
  },

  loadMyinformation() {
    let id = wx.getStorageSync('id')
    imine.loadMyinformation({reqdata: {id}},r => {
      wx.setStorageSync('user', r.object)
    })
  },

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

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

  },

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

  },

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

  },

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

  },

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

  },

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

  },

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

  }
})