// pages/myBookings/index.js const app = getApp(); let orderSn = "" let orderLimit = 48; Page({ /** * 页面的初始数据 */ data: { isSignIn: false, memberLessonTicket: {}, showDeleteDialog: false, isGoHome: false, endDate: false, }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { if (options.scene) { app.$api.memberLessonTicketsSing({ coachId: options.scene }).then(res => { orderSn = res.orderSn; wx.showToast({ title: '签到成功', duration: 2000 }) let that = this; setTimeout(function() { that.getData(); }, 2000) }, err => { setTimeout(function() { if (!options.orderSn) { wx.redirectTo({ url: '/pages/home/index', }) } else { wx.redirectTo({ url: '/pages/myBookings/index?orderSn=' + options.orderSn, }) } }, 2000) }) } else { orderSn = options.orderSn; this.getData(); } }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function() { let pages = getCurrentPages(); this.setData({ isGoHome: pages.length == 1 }) }, /** * 生命周期函数--监听页面显示 */ onShow: function() { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function() { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function() { }, /** * 用户点击右上角分享 */ onShareAppMessage: function() { return { title: '智慧云馆' } }, // 取消预约 cancelBooking() { if (!this.data.isSignIn) { this.setData({ showDeleteDialog: true }) return; } else { wx.showToast({ title: '距离开课' + orderLimit + '小时内不得取消', icon: 'none', }) } }, // 我要签到 signIn() { let that = this; // if (!this.data.isSignIn) { // this.setData({ // showDeleteDialog: true // }) // return; // } // let currentDate = new Date().getTime(); // let startDate = new Date(this.data.memberLessonTicket.venueLesson.date.replace(/-/g, "/") + ' ' + this.data.memberLessonTicket.venueLesson.startTime).getTime(); // if (currentDate < startDate) { // wx.showToast({ // title: '课程还未开始', // icon: 'none', // }) // return; // } wx.scanCode({ onlyFromCamera: true, success: function(res) { if (!res.path) { wx.showToast({ title: '二维码错误', icon: 'none', }) return; } wx.redirectTo({ url: '/' + res.path + '&orderSn=' + orderSn, }) // that.setData({ // isSignIn: true // }) }, }) }, // 获取数据 getData() { app.$api.memberLessonTicketsDetail({ orderSn: orderSn }).then(res => { let currentDate = new Date().getTime(); let startDate = currentDate; if (res.memberLessonTicket.venueLesson.orderLimit){ orderLimit = res.memberLessonTicket.venueLesson.orderLimit; } if (res.memberLessonTicket) { startDate = new Date(res.memberLessonTicket.venueLesson.date.replace(/-/g, "/") + ' ' + res.memberLessonTicket.venueLesson.startTime).getTime(); } if (!res.memberLessonTicket) { wx.navigateBack({ delta: 1, }) } this.setData({ memberLessonTicket: res.memberLessonTicket, isSignIn: (startDate - currentDate) / 1000 / 60 / 60 < orderLimit, }) }, err => { }) }, // 取消弹框 cancelDeleteDialog() { this.setData({ showDeleteDialog: false }) }, // 确认删除 confirmDeleteDialog() { app.$api.memberLessonTicketsCancel({ orderSn: this.data.memberLessonTicket.orderSn }).then(res => { wx.showToast({ title: '取消成功', }) this.setData({ showDeleteDialog: false }) this.getData(); }, err => { this.setData({ showDeleteDialog: false }) }); }, // 打开导航, opnGPS() { wx.openLocation({ latitude: Number(this.data.memberLessonTicket.venueLesson.latitude), longitude: Number(this.data.memberLessonTicket.venueLesson.longitude), name: this.data.memberLessonTicket.venueLesson.name, address: this.data.memberLessonTicket.venueLesson.address, }) }, // 点击图片 clickImage() { wx.previewImage({ urls: [this.data.memberLessonTicket.venueLesson.coach.wechatCode], }) } })