const app = getApp(); Page({ /** * 页面的初始数据 */ data: { hidden: true, money: 0, coupon: null, list: [], }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { this.setData({ money: options.money, list: JSON.parse(options.list), color:app.globalData.color }); console.log(options); }, /** * 立即使用 */ cy_onceUse: function(e) { var index = e.currentTarget.dataset.index; this.data.coupon = this.data.list[index]; if(this.data.coupon.cardType=="DISCOUNT" && app.orderTicket.promotionFlag==1){ wx.showToast({ title: '折扣券不能同促销商品同时使用', icon:'none' }) return ; } this.setData({ hidden: false, }) this.cy_checkCouponConsume(); }, /** * 校验核销优惠券 */ cy_checkCouponConsume: function() { var that = this; var store = wx.getStorageSync("store"); var coupon = that.data.coupon; var params = { method: "check.coupon.consume", code: coupon.code, amount: parseFloat(that.data.money * 100).toFixed(0) , shopNo: store.storeNo, // app.globalData.shopNo, posNo: app.globalData.posNo, workerNo: app.globalData.workerNo } var ignores = []; console.log(params); app.jsapi.memberApi(app.globalData.memberAppKey, app.globalData.memberAppSecret, app.globalData.memberUrl).ajax(params, ignores, function(json) { console.log(json); that.setData({ hidden: true, }) var data = json.data; if (data.status == 1) { var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; if(coupon.cardType=="GIFT"){ //判断该门店是否有兑换券的商品并且获取改商品的价格 that.cy_getGiftProductPrice(coupon); }else{ prevPage.cy_selectUseCoupon(coupon); wx.navigateBack({ }); } } else { wx.showToast({ title: data.errMessage, icon: "none" }) } }, function(err) { that.setData({ hidden: true, }) wx.showToast({ title: '网络异常,优惠券检验失败', icon: "none" }) }); }, cy_getGiftProductPrice:function(coupon){ var flag=0; var gift = JSON.parse(coupon.gift); var giftTem=[]; var giftCount=0; var i=0; var totalBoxPrice=0; if(gift && gift.length>=1){ giftCount=gift.length; for(var giftItem of gift){ var productId = giftItem.productId; var specId = giftItem.specId; var storeId=app.orderTicket.storeId; var params = { method: "program.productspec.detail", productId: productId, specId: specId, storeId: storeId } var ignores = []; console.log(params); 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) { if(data.data.listProduct && data.data.listProduct.length>0){ giftItem.price=data.data.listProduct[0].price giftItem.boxPrice=data.data.listProduct[0].boxPrice; giftItem.linkUrl=coupon.coverLogo; if(data.data.listProduct[0].boxPrice>0){ totalBoxPrice+=data.data.listProduct[0].boxPrice*giftItem.num; giftItem.packageFee==data.data.listProduct[0].boxPrice*giftItem.num; } giftTem.push(giftItem); flag++; } } else { wx.showToast({ title: data.errMessage, icon: "none" }) } i++; if(i==giftCount){ if(flag==i){ var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; coupon.gift=JSON.stringify(giftTem); coupon.totalBoxPrice=totalBoxPrice; console.error("totalBoxPrice",totalBoxPrice) prevPage.cy_selectUseCoupon(coupon); wx.navigateBack({ }) }else{ wx.showToast({ title: '门店没有兑换的商品,暂无法使用', icon: "none" }) } } }, function(err) { wx.showToast({ title: '网络异常,查询兑换券单价失败', icon: "none" }) }); } }else{ isSuccess=false wx.showToast({ title: '该兑换券无兑换的商品', icon: "none" }) return ; } } })