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

    /**
     * 页面的初始数据
     */
    data: {
        card_info: {},
        student_list: {},
        picker_list: {},
        is_agree: true,
        userlist: ['张三', '里斯'],
        index: -1,
        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 () {

    }
})