buyCard.js 4.5 KB
// pages/buyCard/buyCard.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    card_info: {},
    student_list: {},
    picker_list: {},
    is_agree: true,
    userlist: ['张三', '里斯'],
    index: 0,
    pay_success: false,
  },

  //选择成员
  changeStudent(e) {
    if (this.data.student_list.length === 0) {

    }
    this.setData({
      index: e.detail.value,
    })
  },

  //添加学员
  addUser() {
    wx.navigateTo({
      url: '../../index/confirm-appointment-info/add-student/add-student?is_back=' + true,
    })
  },

  //服务协议
  serviceProtocol() {
    wx.navigateTo({
      url: '../protocol/protocol',
    })
  },

  //确认支付
  confirmPay() {
    if (this.data.index !== -1) {
      if (this.data.is_agree) {
        let url = '/portal/Order/order_add';
        let header = {
          "XX-token": wx.getStorageSync('token')
        };
        let params = {
          id: this.data.student_list[this.data.index].id
        };
        app.post(url, params, header).then((res) => {
          console.log('支付换参', res);
          this.wxPay(res.pay)
        })
      } else {
        wx.showToast({
          title: '请同意协议!',
          icon: 'none'
        })
      }
    } else {
      wx.showToast({
        title: '请绑定学员!',
        icon: 'none'
      })
    }
  },

  //微信支付
  wxPay(data) {
    const self = this;
    wx.requestPayment({
      'timeStamp': data.timeStamp,
      'nonceStr': data.nonceStr,
      'package': data.package,
      'signType': data.signType,
      'paySign': data.paySign,
      'success': function(res) {
        console.log('支付成功', res);
        wx.showToast({
          title: '支付成功',
          icon: 'success',
          success: function() {
            setTimeout(function() {
              if (self.data.is_back) { //如果从首页购买的,成功后返回首页
                wx.navigateBack({
                  delta: 1
                })
              } else { //否则进入预约订单详情页
                wx.redirectTo({
                  url: '/pages/my/order-detail/order-detail'
                })
              }
              // self.setData({
              //     ifshowmold: true,
              // })
            }, 500)
          }
        });
      },
      'fail': function(res) {
        // console.log('支付失败', res);
      }
    })
  },

  //更新上一页面的购买状态
  changeState() {
    var pages = getCurrentPages();
    if (pages.length > 1) {
      var beforePage = pages[pages.length - 2] //获取上一页面实例
      if (this.data.pay_success) {
        beforePage.refreshModal()
      }
    }
  },

  //畅玩卡说明
  getArcCard() {
    let url = '/wxapp/public/arc_card';
    let header = {
      "XX-token": wx.getStorageSync('token')
    };
    app.post(url, {}, header).then((res) => {
      console.log(res);
      this.setData({
        card_info: res
      })
    })
  },
  
  //获取学员列表
  getStudentList() {
    let url = '/user/Student/student_list';
    let header = {
      "XX-token": wx.getStorageSync('token')
    };
    let params = {
      page: 1,
    };
    var list = [];
    app.post(url, params, header).then((res) => {
      console.log('学员列表', res);
      res.list.forEach((item) => {
        list.push(item.name)
      });
      console.log('list', list);
      this.setData({
        student_list: res.list,
        picker_list: list
      })
    })
  },

  //同意协议按钮
  agree() {
    this.setData({
      is_agree: !this.data.is_agree
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    console.log('options', options);
    const self = this;
    self.getArcCard();
    self.setData({
      is_back: options.is_back ? options.is_back : ''
    })
  },

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

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {
    const self = this;
    self.getStudentList();

  },

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

  },

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

  },

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

  },

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

  },

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

  }
})