const app = getApp(); import productApi from '../../api/product' import storeApi from '../../api/store' import createTimeApi from '../../utils/date' import orderApi from '../../api/order' import until from '../../utils/util' Page({ /** * 页面的初始数据 */ data: { peopleNum: 1, activeTab: 0, shopInfo: {}, shopId: 0, storeName: '', productId: 0, productImg: '', productName: '', price: 0, tabs: [], orderTime: "", orderTimeHeight: 0, days: [], hasMobile: false }, /** * 生命周期函数--监听页面加载 */ onLoad: async function (options) { var shopId = options.shopId; var productId = options.productId var productImg = options.productImg; var productName = options.productName; var price = options.price; this.setData({ shopId, productId, productImg, productName, price }) }, checkAuth: async function () { const self = this const isAuth = await app.isAuth() if (!isAuth) { wx.redirectTo({ url: '/pages/prompt/prompt?page=' + this.route, }) } console.log(self.productInfo) let data = { productId: self.data.productId, storeId: self.data.shopId, appointmentTime: self.data.orderTime, num: self.data.peopleNum, mobile: 15656942279 } const rs = await orderApi.createOrder(data) }, getMobile:function (params) { }, onSlideChangeEnd: function (e) { var that = this; that.setData({ activeTab: e.detail.index }) }, //生成当前可预约的时间 createTimeList: async function () { var storeId = this.data.shopId; var price = this.data.price; var shopInfo = await storeApi.getStoreById(storeId); var openTime = shopInfo.info.openTime; var closeTime = shopInfo.info.closeTime; var date = await storeApi.getStoreAppointTime(storeId); var days = date.date; console.log(days) const tabs = createTimeApi.createTimeList(openTime, closeTime, days, price); console.log(tabs) this.setData({ storeName: shopInfo.info.storeName, days, tabs }) }, getOrderTime: function (e) { //选中日期的下标 var i = this.data.activeTab; //选中时间的下标 var index = e.currentTarget.dataset.i; //获取选中的日期 var date = this.data.days[i]; var time = e.currentTarget.dataset.time; var year = (new Date()).getFullYear() var oTime = year + '-' + date + ' ' + time; //设置选中的样式 var tabs = this.data.tabs; var list = tabs[i].list; //先清空其他选中的样式 list.forEach(function (item, i, array) { item.checked = false; }) if (list[index].inTime) { list[index].checked = true; this.data.tabs[i].list = list; } this.setData({ orderTime: oTime, tabs }) }, addPeopleNum: function (e) { var num = e.currentTarget.dataset.num; var maxNum = 9; if (num < maxNum) { num++; } this.setData({ peopleNum: num }) }, reducePeopleNum: function (e) { var num = e.currentTarget.dataset.num; if (num > 1) { num--; } this.setData({ peopleNum: num }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: async function () { this.createTimeList(); }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, })