|
|
 直接上代码:
- var dateUtils = require('date.js')
- var CN_Date = require('getCNDate.js');
- var app = getApp()
- var t = new Date();
-
- Page({
- data: {
- dataArray: "", // 保存当前界面的五天日期
- checkday: "",
- checktime: "",
- telphone: "",
- item_id: "",
- hiddenLoading: true,
- currentIndex: 0,
- currentTime: 0,
- catalogSelect: 0
- },
-
- sendRequestDate: function (uploadDate) {
- var that = this
- var item_id = that.data.item_id
- console.log(uploadDate)
- this.setData({
- hiddenLoading: false
- })
- wx.request({
- url: '',//后台地址
- data: {
- date: uploadDate,
- product_id: item_id
- },
- method: 'POST',
- header: {
- 'content-type': 'application/json'
- },
- success: function (res) {
- var data = res.data;
- console.log(res.data)
- var dataArray = [];
- var i = 0;
- for (var date in data) { // 遍历时期的key
- var timeList = data[date];
- var j = 0;
- var timeArray = [];
- for (var time in timeList) { // 遍历时间的key
- timeArray[j] = {
- time: time,
- isSelect: timeList[time],
- select: j + 1
- }
- j++;
- }
-
- var timeStamp = new Date(date);
- dataArray[i] = {
- date: date,
- dateName: dateUtils.getDateFormatFromMMdd(timeStamp),
- weekName: dateUtils.getWeekName(timeStamp),
- timeArray: timeArray
- }
- i++;
- }
-
- that.setData({
- hiddenLoading: true,
- dataArray: dataArray
- });
- },
- });
-
- },
- // 调用错误提示弹窗的方法
- showToastErr(msg) {
- const _this = this;
- _this.$wuxToast.show({
- type: 'forbidden',
- color: '#fff',
- timer: 1000,
- text: msg,
- success: () => console.log('禁止操作')
- })
- },
- onLoad: function (options) {
- var that = this;
- this.$wuxToast = app.wux(this).$wuxToast
- // 接收从byorder-detail界面传过来的值
- that.setData({
- item_id: options.id,
- telphone: options.phone
- })
- // 获取当日的时间戳
- var todayTimeStamp = Date.parse(new Date());
- // 初始化日期数据
- var uploadDate = dateUtils.getDateFormatFromyyyyMMdd(new Date().getTime())
- that.sendRequestDate(uploadDate)
- },
- /**
- * 用户点击了向右的箭头
- */
- dj1: function () {
- var that = this
- var dateArrayOld = that.data.dataArray;
- var dateName = dateArrayOld[dateArrayOld.length - 1].date;
- var uploadDate = dateUtils.getNextDayForyyyyMMdd(new Date(dateName).getTime())
- that.setData({
- catalogSelect: 0,
- checkday: "",
- checktime: ""
- })
- that.sendRequestDate(uploadDate)
- },
- /**
- * 用户点击了向左的箭头
- */
- dj2: function () {
- var that = this
- var dateArrayOld = that.data.dataArray;
- if (dateArrayOld[0].weekName == "今天") {
- return;
- }
- var dateName = dateArrayOld[0].date;
- var uploadDate = dateUtils.getPreFiveForyyyyMMdd(new Date(dateName).getTime())
- that.setData({
- catalogSelect: 0,
- checkday: "",
- checktime: ""
- })
- that.sendRequestDate(uploadDate)
- },
- /**
- * 用户选择了日期
- */
- select: function (event) {
- var that = this
- var index = event.currentTarget.dataset.index
- //为上半部分的点击事件
- that.setData({
- currentIndex: index,
- catalogSelect: 0,
- checkday: "",
- checktime: ""
- })
-
- },
- /**
- * 用户选择了时间
- */
- selectTime: function (data) {
- var that = this
- var dataItem = that.data.dataArray[that.data.currentIndex];
- var index = data.currentTarget.dataset.tindex
- if(dataItem.timeArray[index].isSelect=='false'){
- that.showToastErr('当前时间不可选');
- return;
- }
-
- var dateTime = dataItem.dateName
- var timeArr = dataItem.timeArray[index].time
- console.log(data.currentTarget.dataset.select)
- this.setData({
- currentTime: index,
- checkday: dateTime,
- checktime: timeArr,
- catalogSelect: data.currentTarget.dataset.select
- })
- },
- confirm_byorder: function (e) {
- var user = wx.getStorageSync('user')
- this.setData({
- user: user
- })
- var that = this
- var formId = e.detail.formId
- var openId = (wx.getStorageSync('openId'))
- var telphone = that.data.telphone
- var item_id = that.data.item_id
- var checkday = that.data.dataArray[that.data.currentIndex].date
- var checktime = that.data.checktime
- var uploadDate = that.data.dataArray[0].date;
- if (checkday == '' || checktime == '') {
- this.setData({
- hiddenLoading: !this.data.hiddenLoading
- })
- setTimeout(function () {
- that.setData({
- hiddenLoading: true
- });
- })
- that.showToastErr('请选择服务时间')
- } else {
- this.setData({
- hiddenLoading: !this.data.hiddenLoading
- })
- wx.request({
- url: 'https://ssl.ycml-bj.com/api/wx/activity/reserve',
- data: {
- formId: formId,
- openId: openId,
- user_phone: user,
- phone: telphone,
- product_id: item_id,
- date: checkday,
- time: checktime
- },
- method: 'POST',
- header: {
- 'content-type': 'application/json'
- },
- success: function (res) {
- setTimeout(function () {
- that.setData({
- hiddenLoading: true
- });
- })
- if (res.data.code == 430007){
- that.sendRequestDate(uploadDate)
- that.showToastErr('预约人数已满')
- } else {
- wx.showToast({
- title: '预约成功',
- icon: 'success',
- duration: 1500,
- mask: true, //是否显示透明蒙层,防止触摸穿透,默认:false
- success: function () {
- // setTimeout(function () {
- // wx.reLaunch({
- // url: '/pages/index/index'
- // })
- // }, 2000)
- }
- })
- }
-
- },
- });
- }
-
-
- }
-
- })
复制代码
|
|