var _request = require('../../utils/request.js') var rid Page({ data: { detail: {}, showCancelModal:false, canceltxt:'', cancelnum:1, canceldata:{}, cancelitem:{}, oncancel:false }, onShow:function(){ console.log('onshow == canteen') this.setData({ detail: {} }) this.getList() }, // onLoad: function (options) { // console.log('onload onLoad == canteen',options) // this.getList() // }, getList () { var that = this var url = 'newapi:food/get-history-info' var params = { } var success = function (res) { var data = res.data.data.list; for(let i in data){ let hasorder = false; for(let o in data[i]['details']){ if(data[i]['details'][o]['nums'] > 0) hasorder = true; } let xingqi; let thedate = data[i]['food_date']; if(new Date(thedate).getDay() == 0) xingqi = '星期日'; if(new Date(thedate).getDay() == 1) xingqi = '星期一'; if(new Date(thedate).getDay() == 2) xingqi = '星期二'; if(new Date(thedate).getDay() == 3) xingqi = '星期三'; if(new Date(thedate).getDay() == 4) xingqi = '星期四'; if(new Date(thedate).getDay() == 5) xingqi = '星期五'; if(new Date(thedate).getDay() == 6) xingqi = '星期六'; data[i]['hasorder'] = hasorder; data[i]['food_day'] = xingqi; } that.setData({ detail: data }) console.log('data',data); } _request.$get(url, params, success) }, showCancelm(e){ var that = this var selectdata = e.currentTarget.dataset.data; var selectoitem = e.currentTarget.dataset.oitem; console.log('selectdata',selectdata); console.log('selectoitem',selectoitem); let cncan = ''; if(selectoitem.type == 1) cncan = "早餐"; if(selectoitem.type == 2) cncan = "中餐"; if(selectoitem.type == 3) cncan = "晚餐"; this.setData({ showCancelModal:true, canceltxt:`确定取消 ${selectdata['food_date']}(${selectdata['food_day']}) [${cncan}] 订单?`, canceldata:selectdata, cancelitem:selectoitem, cancelnum:selectoitem['nums'] }) }, hideCancelm(){ this.setData({ showCancelModal:false }) }, add: function (e) { var type = e.target.dataset.max; if(this.data.cancelnum+1 <= this.data.cancelitem['nums']){ this.setData({ cancelnum:this.data.cancelnum+1 }) } }, mius: function (e) { var type = e.target.dataset.max; if(this.data.cancelnum-1 > 0){ this.setData({ cancelnum:this.data.cancelnum-1 }) } }, confirmDel(){ var that=this; let cancelnum = this.data.cancelnum; function isPositiveInteger(input) { // 使用正则表达式匹配纯数字正整数 var pattern = /^[1-9]\d*$/; return pattern.test(input); } if (!isPositiveInteger(cancelnum)) { wx.showToast({ title: '请输入正整数', icon: 'error', duration: 2000 }); return; } if(parseInt(cancelnum) > this.data.cancelitem.nums){ wx.showToast({ title: '退餐失败,输入的退餐数量大于订餐数', icon: 'none', duration: 2000 }); return; } var url = 'newapi:food/unsubcribe-food' var params = { "date": this.data.canceldata['food_date'], "nums": parseInt(cancelnum), "type": parseInt(this.data.cancelitem.type) } this.setData({ oncancel:true }) var success = function (res) { console.log('res',res); if(res.data.code == 0){ wx.showToast({ title: '退餐成功', icon: 'success', duration: 2000 }); setTimeout(function(){ that.setData({ detail: {}, showCancelModal:false, oncancel:false }) that.onShow(); },500) return; }else{ wx.showToast({ title: res.data.msg, icon: 'none', duration: 2000 }); setTimeout(function(){ that.setData({ oncancel:false }) },500) } } _request.$post(url, JSON.stringify(params), success) }, delOrder(e){ var that = this var selectdata = e.currentTarget.dataset.data; var selectoitem = e.currentTarget.dataset.oitem; console.log('selectdata',selectdata); console.log('selectoitem',selectoitem); let cncan = ''; if(selectoitem.type == 1) cncan = "早餐"; if(selectoitem.type == 2) cncan = "中餐"; if(selectoitem.type == 3) cncan = "晚餐"; wx.showModal({ title: `确定取消 ${selectdata['food_date']}(${selectdata['food_day']}) [${cncan}] 订单?`, content: "1", // editable:true, // placeholderText:`请输入退餐数,已订【${selectoitem.nums}】餐`, success: function(res) { if (res.confirm) { } else if (res.cancel) { } } }) }, scanCode(){ var that = this; wx.scanCode({ onlyFromCamera: true, success (res) { if(res.errMsg == "scanCode:ok"){ let link = res.result.split(':')[1]; var url = 'newapi:'+link; var params = { } var success = function (res) { console.log('用餐提醒',res); if(res.data.code != 0){ wx.showToast({ title: res.data.msg, icon: 'none', duration: 2000 }); return; } let data = res.data.data; let can = ''; if(data.type == 1) can = "早餐"; if(data.type == 2) can = "中餐"; if(data.type == 3) can = "晚餐"; wx.showModal({ title: "用餐提醒", content: `当前用餐日期${data['foodDate']} [${can}] 数量 ${data['nums']},是否确定用餐?`, success: function(res) { if (res.confirm) { var url = 'newapi:food/comfirm-get-food' var params = { } var success = function (res) { var result = res.data if(result.code == 0){ wx.showToast({ title: '成功,用餐愉快', icon: 'success', duration: 3000 }); that.onShow(); return; }else{ wx.showToast({ title: result.msg, icon: 'error', duration: 3000 }); } } _request.$get(url, params, success) } else if (res.cancel) { } } }) } _request.$get(url, params, success) }else{ wx.showToast({ title: '扫描失败', icon: 'error', duration: 2000 }); } } }) }, toOrder() { wx.navigateTo({ url: '/pages/canteen/order/order' }) }, toRecharge() { // if(this.data.info.user.tel == ''){//未绑定手机号 // wx.navigateTo({ // url: '/packageUser/pages/user/bind/bind' // }) // wx.showToast({ // title: '请先绑定手机号~', // icon: 'none', // duration: 2000 // }) // //2020 // wx.setStorageSync('bindbackurl', '/packageUser/pages/user/fund/fund'); //存入手机绑定后跳转页面 // }else{ wx.navigateTo({ url: '/packageUser/pages/user/fund/fund?source=canteen' }) // } }, })