godeclare.js 4.3 KB
// pages/main/addtionalreduce/godeclare/godeclare.js
Page({

  /**
   * Page initial data
   */
  data: {
    flag_housing01: false,
    flag_housing02: false,
    selectIndex: [{
      message: '子女教育',
      sureid: false
    }, {
        message: '继续教育',
      sureid: false
    }, {
      message: '赡养老人',
      sureid: false
    }, {
        message: '大病医疗',
      sureid: false
    }, {
      message: '住房',
      sureid: false,
      housing01:false,
      extra_message :''
    }, ],
    unitData: {
      label: '选择申报单位',
      bindtype: 'unit',
      selected: '北京小爱智能科技',
      values: ["北京小爱智能科技"],
      placeholder: '请选择申报单位',
      onChange: 'onPickerSelect'
    },

  },

  /**
   * Lifecycle function--Called when page load
   */
  onLoad: function(options) {
    var that = this
    // wx.clearStorage()
    wx.getStorage({
      key: 'selectitems',
      success: function (res) {
        console.log("selectitems", res.data)
        that.setData({
          selectIndex: res.data,
          flag_housing01: res.data[res.data.length - 1].housing01,
          flag_housing02: !res.data[res.data.length - 1].housing01
        })
      },
    })
  },

  /**
   * Lifecycle function--Called when page is initially rendered
   */
  onReady: function() {

  },

  /**
   * Lifecycle function--Called when page show
   */
  onShow: function() {

  },

  onPickerSelect: function(e) {
    console.log('picker发送选择改变,携带值为', e)
    var unit_data = this.data.unitData
    unit_data.selected = unit_data.values[e.detail.value]
    this.setData({
      unitData: unit_data
    })
  },

  selectRep: function(e) {
    let index = e.currentTarget.dataset.selectindex; //当前点击元素的自定义数据,这个很关键 
    let selectIndex = this.data.selectIndex; //取到data里的selectIndex 
    selectIndex[index].sureid = !selectIndex[index].sureid; //点击就赋相反的值 
    this.setData({
      selectIndex: selectIndex //将已改变属性的json数组更新 
    })
  },

  housing01: function(e) {
    this.setData({
      flag_housing01: !this.data.flag_housing01
    })
    if (this.data.flag_housing02) {
      this.setData({
        flag_housing02: !this.data.flag_housing02
      })
    }
  },

  housing02: function(e) {
    this.setData({
      flag_housing02: !this.data.flag_housing02
    })
    if (this.data.flag_housing01) {
      this.setData({
        flag_housing01: !this.data.flag_housing01
      })
    }
  },

  gocommit: function() {
    if (!this.data.unitData.selected || !this.data.unitData.selected.length>0){
      wx.showToast({
        title: '请选择申报单位',
      })
      return;
    }
    var selectjson = new Array();
    for (var i = 0; i < this.data.selectIndex.length; i++) {
      if (this.data.selectIndex[i].sureid) {
        selectjson.push(this.data.selectIndex[i]);
      }
    }
    console.log("selectjson01",selectjson)
    if (selectjson.length<1) {
      wx.showToast({
        title: '请选择专项附加扣除',
      })
      return;
    } else {
      if (selectjson[selectjson.length - 1].sureid ) {
        if(this.data.flag_housing01 || this.data.flag_housing02){
          selectjson[selectjson.length - 1].housing01 = true;
          selectjson[selectjson.length - 1].extra_message = this.data.flag_housing01 ? "住房贷款利息" :"住房租金" ;
          this.setData({
            selectIndex: selectjson 
          })
        }
      } else {
        wx.showToast({
          title: '请选择住房类型',
        })
        return;
      }
    }
    wx.setStorage({
      key: 'is_declared',
      data: true,
    })
    wx.setStorage({
      key: 'selectitems',
      data: this.data.selectIndex,
    })

    wx.redirectTo({
      url: '../godetail/godetail'
    })
  },

  /**
   * Lifecycle function--Called when page hide
   */
  onHide: function() {

  },

  /**
   * Lifecycle function--Called when page unload
   */
  onUnload: function() {

  },

  /**
   * Page event handler function--Called when user drop down
   */
  onPullDownRefresh: function() {

  },

  /**
   * Called when page reach bottom
   */
  onReachBottom: function() {

  },

  /**
   * Called when user click on the top right corner to share
   */
  onShareAppMessage: function() {

  }
})