const app = getApp(); const card = require('../../utils/card.js'); const log = require('../../utils/log.js'); const QQMapWX = require('../../utils/qqmap-wx-jssdk.min.js'); const cartOrder = require("../../utils/cartOrder.js"); Page({ /** * 页面的初始数据 */ data: { hidden: false, isOpen: true, user: app.globalData.user, type:"", scanner: false }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { // 巨为 // "ETLBZ-FABA4-XCDUL-DG3QJ-6FJ2Q-T2BRM" // 享甜 // 56WBZ-5IIK4-S4TUQ-D7KMX-MZL2J-BXBMD this.setData({ pageOption: options }); var key="56WBZ-5IIK4-S4TUQ-D7KMX-MZL2J-BXBMD"; var that = this; var inter=setInterval(function(){ if(app.globalData.isLoadSuccess){ if(app.globalData.txMapKey){ key=app.globalData.txMapKey; app.qqmapsdk = new QQMapWX({ key:key, }); }else{ // app.showMsg("没有配置定位信息,请联系开发者配置","none"); app.qqmapsdk = new QQMapWX({ key:key, }); } clearInterval(inter); } },500) console.log("-----------", options); //扫码 if (options.scene) { var code = "" if(options.scene.indexOf("&") != -1) { code = decodeURIComponent(options.scene) }else { code = decodeURIComponent(decodeURIComponent(decodeURIComponent(options.scene))) } log.info(code) console.log("扫码结果--->" + code); // that.setData({ // scanner: true // }) // setTimeout(function() { // that.decodeCode(code); // }, 1000); that.setTimeWatch(code) } //会员分享 if (options.type) { if (options.type = 'share') { app.temData.shareStatus = true; app.temData.fromMemberId = options.memberId; app.temData.activityId = options.activityId; app.temData.openId = options.openId; } } app.userInfoReadyCallback = res => { if (res) { that.cy_getMemberInfo(); } } }, //定时器获取数据 setTimeWatch: function(val) { var that = this; var id = setInterval(function(){ if(val) { that.setData({ scanner: true }); that.decodeCode(val); clearInterval(id) } }, 1500) }, // 扫码点餐 decodeCode: function(code) { if (code) { var arr = []; arr = code.split("&"); app.storeId = arr[1]; var tableNo = arr[2]; var str = code.substr(code.length - 2, 2); console.log("tableNo--->" + tableNo); wx.setStorageSync('type', str); app.isLoadTableNo = "load"; this.cy_loadTableNo(tableNo); } }, /** * 加载餐桌 */ cy_loadTableNo: function(tableNoParam) { var that = this; var params = { "method": "store.table", "storeId": app.storeId, } var ignores = []; app.jsapi.api(app.globalData.appKey, app.globalData.appSecret, app.globalData.serverUrl).ajax(params, ignores, function(json) { console.log("---------", json); var data = json.data; if (data.status == 1) { var list = data.list; if (list.length > 0) { var tableNo = ""; for (var item of list) { if (item.no == tableNoParam) { tableNo = item.name; break; } } console.log(tableNoParam, tableNo); if(tableNoParam.indexOf("type") == -1){ wx.setStorageSync("tableNo", tableNoParam); } wx.setStorageSync("tableName", tableNo); that.loadStoreDetail(); } else { that.loadStoreDetail(); } } }, function(err) { console.log("=-=-=", err); }); }, loadStoreDetail: function() { var that = this; var params = { "method": "program.store.detail", "storeId": app.storeId, } var ignores = []; app.jsapi.api(app.globalData.appKey, app.globalData.appSecret, app.globalData.serverUrl).ajax(params, ignores, function(json) { console.log(json); var data = json.data; if (data.status == 1) { var store = data.data; //console.error(store + "....") //判断门店是否营业 store.isBusiness = store.isOpen wx.setStorageSync("store", store); app.orderTicket = cartOrder.getDefaultOrderTicket(); app.orderTicket.storeId = app.storeId; app.orderTicket.storeName = store.storeName; app.orderTicket.storeAddress = store.address; app.orderTicket.storeNo = store.storeNo; app.orderTicket.distance = 0; app.orderTicket.deliverFee = store.deliverFee; //app.orderTicket.busMode = 0; app.orderTicket.phone = app.globalData.phone; app.orderTicket.tableName = wx.getStorageSync("tableName"); app.orderTicket.tableNo = wx.getStorageSync("tableNo"); app.globalData.memberPriceEnabled = store.memberPriceEnabled; app.globalData.memberPayEnabled=store.memberPayEnabled; //判断门店是否营业 var url = "index?scanner=" + that.data.scanner; if( store.isOpen ==0){ url = "index?scanner=" + false; } wx.redirectTo({ url: url, }) } else { wx.showToast({ title: data.message, icon: 'none' }) } }, function(err) { console.log("=-=-=", err); }); }, onShow: function() { wx.clearStorage(); this.onLoad(this.data.pageOption); var that = this; if (app.globalData.memberAppKey) { if (this.data.isOpen) { setTimeout(function() { if (!that.data.scanner) { that.setData({ isOpen: false, hidden: true, }); if (!that.data.scanner) { wx.redirectTo({ url: 'index', }) } } }, 4000); } } }, /** * 获取用户信息 */ cy_getRequestUserInfo: function(e) { var that = this; var userInfo = e.detail.userInfo; var nickName = userInfo.nickName; var gender = userInfo.gender; var encryptedData = e.detail.encryptedData; var iv = e.detail.iv; wx.request({ url: app.globalData.serverUrlExtend, method: "POST", header: { 'content-type': 'application/x-www-form-urlencoded' }, data: { "type": "wxdcgetuser", "tenantId": app.globalData.tenantId, "wid": app.globalData.wid, "openId": app.openId, "loginKey": app.loginKey, "encryptedData": encryptedData, "iv": iv, "nickName": nickName, "sex": gender }, success: function(res) { var data = res.data; if (data.status == 1) { var user = data.data.user; app.globalData.userId = user.id; wx.setStorageSync("userId", user.id); } else { wx.showToast({ title: data.message, icon: "none", }) } }, fail: function(res) { wx.showToast({ title: '网络连接异常,请检查', icon: "none" }) } }) }, /** * 获取会员信息 */ cy_getMemberInfo: function() { var that = this; var user = that.data.user; var params = { "method": "small.weixin.member.info.wid1", "wid": app.globalData.memberWid, "openId": app.openId, }; // 忽略签名参数 var ignores = ["openId", "nickName", "gender", "avatarUrl", "country", "province", "city"]; app.jsapi.api(app.globalData.memberAppKey, app.globalData.memberAppSecret,app.globalData.memberUrl).ajax(params, ignores, function(json) { console.log("-------会员信息", json); var result = json.data; if (result.status == 1) { var data = result.data; if (data.cardNo) { wx.setStorageSync("cardNo", data.cardNo); wx.setStorageSync("memberId", data.memberId); app.globalData.cardNo = data.cardNo; app.globalData.memberId = data.memberId; that.cy_selectCardInfo(); } if (that.data.isOpen) { that.data.isOpen = false; if (!that.data.scanner) { wx.redirectTo({ url: 'index', }) } } } else { if (result.code == 38) { wx.showModal({ title: "提示", content: result.message, }) } else { that.setData({ hidden: true, }) } } }, function(err) { console.log(err) that.setData({ hidden: true, }) wx.showToast({ title: '网络异常,请检查网络连接', icon: "none" }) } ); }, /** * 查询卡信息 */ cy_selectCardInfo: function() { var that = this; card.wx_cardInfo(app.globalData.cardNo, function(json) { console.log(json); var result = json.data; if (result.status == 1) { var cardInfo = result.data; wx.setStorageSync("cardInfo", cardInfo); app.globalData.cardInfo = cardInfo; that.setData({ availableAmount: cardInfo.availableAmount, totalPoint: cardInfo.totalPoint, level: cardInfo.level, couponNum: cardInfo.couponNum }); } else { wx.showToast({ title: result.errMessage, icon: "none" }) } }, function(err) { wx.showToast({ title: "网络链接失败", icon: "none" }) }); }, /** * 用户点击右上角分享 */ onShareAppMessage: function() { return app.onShare; } })