E企盈营销工具技术服务商 热线:4006-838-530

小程序提交订单选择支付类型demo

E企盈直播平台营销卖货系统

概要:支付类型 分为:微信支付、会员卡支付、到店支付。如果改用户不是会员 会员卡支付隐藏掉通过元素属性hidden灵活的切换支付类型目录 小程序代码:wxml小程序代码:wxss小程序代码:js小程序代码:wxmlimport src=”../../wxParse/wxParse.wxml” /view class=’container’  view class=’message’    view class=’message-top’      text class=’title'{{query.roomName}}/text      view class=’day’        view class=’inday’          text入住/text          text{{arriveDate}}/text        /view        view class=”outday”          text离店/text          text{{leaveDate}}/text        /view        text class=’total-num’共{{query.intevalDays}}晚/text      /view      text class=’name'{{cname}}/text    /view    view class=’number’      text房间数/text      view        image bindtap=’onMinus’ src=’images/minus.png’/image        text{{roomNum}}/text        image bindtap=’onAdd’ src=’images/add.png’/image      /view    /view  /view  form bindsubmit=”formSubmit” report-submit=”true”    block      view hidden wx:for=”{{roomPrices}}” wx:key=”key” wx:for-index=”index”        input name=”roomPrices[{{index}}].date” value=”{{item.priceDate}}” type=’hidden’ /        input name=”roomPrices[{{index}}].price” value=”{{item.price}}” type=’hidden’ /        input name=”roomPrices[{{index}}].breakfast” value=”{{item.breakfast}}” type=’hidden’ /        input name=”roomPrices[{{index}}].servicerate” value=”{{item.servicerate}}” type=’hidden’ /        input name=”roomPrices[{{index}}].roomCode” value=”{{item.orderItemCode}}” type=’hidden’ /        input name=”roomPrices[{{index}}].bookingNotice” value=”{{item.bookingNoticeCdesc}}” type=’hidden’ /        input name=”roomPrices[{{index}}].cancelNotice” value=”{{item.cancelNoticeCdesc}}” type=’hidden’ /      /view    /block    block      input type=”hidden” hidden name=”contractProfileId” value=”” /      input type=”hidden” hidden name=”priceName” value=”{{query.priceName}}” /      input type=”hidden” hidden name=”roomCode” value=”{{query.roomCode}}” /      input type=”hidden” hidden name=”name” value=”{{query.roomName}}” /      input type=”hidden” hidden name=”priceSystemId” value=”{{query.priceSystemId}}” /      input type=”hidden” hidden name=”salesPromotionId” value=”{{query.salesPromotionId}}” /      input type=”hidden” hidden name=”price” value=”{{query.price}}” /      input type=”hidden” hidden name=”payMent” value=”OFFLINEPAY” /      input type=”hidden” hidden name=”usablePayMent” value=”{{query.payMent}}” /      input type=”hidden” hidden name=”rateCode” value=”{{query.rateCode}}” /      input type=”hidden” hidden name=”roomQty” value=”{{roomNum}}” /      input type=”hidden” hidden name=”hotelCode” value=”{{query.hotelCode}}” /      input type=”hidden” hidden name=”totalFee” value=”{{total}}” /      input type=”hidden” hidden name=”incamount” value=”0″ /      input type=”hidden” hidden name=”promotionFee” value=”0″ /      input type=”hidden” hidden name=”checkInTime” value=”{{query.arriveDate}}” /      input type=”hidden” hidden name=”checkOutTime” value=”{{query.leaveDate}}” /      input type=”hidden” hidden name=”intevalDays” value=”{{query.intevalDays}}” /      !– 优惠券ID —      input type=”hidden” hidden name=”couponSeqid” value=”{{query.couponSeqid}}” /      !– 优惠券金额 —      input type=”hidden” hidden name=”chargeamt” value=”{{query.chargeamt}}” /    /block    view class=’form’      view        text预定人/text        input type=’text’ name=”contactName” placeholder=’请输入预订人’ value=” placeholder-style=”color:#999;” bindinput=’reserveInput’ /      /view      view        text入住人/text        input type=’text’ name=”guestName” placeholder=’请输入入住人’ value=” placeholder-style=”color:#999;” bindinput=’nameInput’ /      /view      view        text手机号/text        input type=’number’ name=”contactMobile” placeholder=’请输入手机号码’ value=” placeholder-style=”color:#999;” maxlength=’11’ bindinput=”telInput” /      /view      view        text备  注/text        input type=’text’ name=”roomSpecial” placeholder=’请备注’ value=” placeholder-style=”color:#999;” /      /view      view hidden style=’display:none’        text备  注/text        input type=’text’ name=”arriveTime” placeholder=’抵达时间’ value=’18:00′ placeholder-style=”color:#999;” /      /view    /view    view class=’order’      view class=’discount’ bindtap=’onCoupon’        text优惠券/text        view class=’coupon’          text wx:if=”{{!showMbrcardpay}}”非会员暂不支持优惠券/text          text wx:elif=”{{query.couponSeqid == null || query.couponSeqid == undefined || query.couponSeqid == ”}}”可用{{couponsObj.ableCount}}张优惠券/text          text wx:else优惠{{query.chargeamt}}元/text          image src=’images/arrows-right.png’/image        /view      /view      !– view class=’discount’        text返现/text        view class=’coupon’          text可返现5元/text        /view      /view —      view class=’pay’        text支付方式/text        view class=’payment’          view bindtap=’onWxPay’            view              image src=’images/wx.png’/image              text微信支付/text            /view            image hidden=”{{!(payMent==’WXPAY’)}}” src=’images/checked.png’/image          /view          view bindtap=’onMemberPay’ hidden=”{{!showMbrcardpay}}”            view              image src=’images/member.png’/image              text会员卡支付/text            /view            image hidden=”{{!(payMent==’BALANCEPAY’)}}” src=’images/checked.png’/image          /view          view bindtap=’onStorePay’            view              image src=’images/store.png’/image              text到店支付/text            /view            image hidden=”{{!(payMent==’OFFLINEPAY’)}}” src=’images/checked.png’/image          /view        /view      /view      view class=’line’/view      view class=’tips’        view class=’tips-title’          image src=’images/tips.png’/image          text预订须知/text        /view        view class=’tips-text’          template is=”wxParse” data=”{{wxParseData:article.nodes}}” /        /view      /view      view class=’line’/view      view class=’tips’ style=’margin-bottom:120rpx’        view class=’tips-title’          image src=’images/tips.png’/image          text取消说明/text        /view        view class=’tips-text’          template is=”wxParse” data=”{{wxParseData:a.nodes}}” /        /view      /view    /view    view class=’submit’      view class=’submit-deatils’ bindtap=’onShade’        text class=’symbol’¥/text        text class=’price'{{total}}/text        view class=’details’          text明细/text          image src=”images/arrows-bottom.png”/image        /view      /view      button class=’submit-btn’ form-type=’submit’提交订单/button      !– view class=’submit-btn’ bindtap=’onSubmit’        text提交订单/text      /view —    /view  /form  view class=’shade-box’ hidden=”{{memberSubmit}}”    view class=’member-pay’      view class=’member-money’会员余额:¥        text class=’money-num'{{memberVo.balance}}/text      /view      input type=’password’ bindinput=”bindinputPwd” placeholder=’请输入支付密码’/input      view class=’member-btn’        view class=’member-cancel’ catchtap=’closeMember’取消/view        view class=’member-submit’ catchtap=”onBalancePay”提交/view      /view    /view  /view  view class=’shade-box’ wx:if=”{{shade}}”    view class=’shade’      image src=’images/close.png’ bindtap=’onClose’ /      text在线支付/text      view class=’order-item’        text优雅大床房/text        text{{query.intevalDays}}晚,{{roomNum}}间共{{totalMoney}}元/text      /view      view wx:if=”{{query.couponSeqid != null && query.couponSeqid != undefined && query.couponSeqid != ”}}” class=’order-item’        text优惠券/text        text-{{query.chargeamt}}元/text      /view      view class=’order-item’        text入住/text        text{{arriveDate}}/text      /view      view class=’order-item’        text离店/text        text{{leaveDate}}/text      /view      !– view class=’order-item’        text返现/text        text5元/text      /view      view class=’order-item’        text优惠券/text        text5元/text      /view —      view class=’total’        text在线付款:/text        text¥/text        text{{total}}/text      /view    /view  /view/view小程序代码:wxss@import ‘../../wxParse/wxParse.wxss’;page {  background-color: #f5f5f5;}.message {  width: 100%;  background-color: #fff;  margin-top: 20rpx;  display: flex;  flex-direction: column;}.number image {  width: 46rpx;  height: 46rpx;}.message-top {  width: 100%;  display: flex;  flex-direction: column;  box-sizing: border-box;  padding: 35rpx 42rpx;}.title {  width: 100%;  font-size: 34rpx;  font-weight: bold;  line-height: 1;}.day {  width: 100%;  display: flex;  flex-direction: row;  line-height: 1;  margin-top: 27rpx;}.inday text:first-child, .outday text:first-child {  font-size: 28rpx;  color: #999;}.inday text:nth-child(2), .outday text:nth-child(2) {  font-size: 32rpx;  color: #5d4f8e;  margin-left: 23rpx;}.outday {  margin-left: 57rpx;}.total-num {  font-size: 32rpx;  color: #5d4f8e;  margin-left: 59rpx;}.name {  font-size: 32rpx;  margin-top: 27rpx;  line-height: 1;}.number {  width: 100%;  border-top: 1px solid #efefef;  box-sizing: border-box;  padding: 26rpx 42rpx;  display: flex;  flex-direction: row;  justify-content: space-between;  align-items: center;}.numbertext {  font-size: 32rpx;  line-height: 1;}.numberview {  display: flex;  flex-direction: row;  align-items: center;}.numberview text {  padding: 0 25rpx;  font-size: 34rpx;  line-height: 1;}.form {  width: 100%;  background-color: #fff;  margin-top: 20rpx;  display: flex;  flex-direction: column;}.form view {  width: 100%;  height: 98rpx;  border-top: 1px solid #efefef;  box-sizing: border-box;  padding: 0 42rpx;  display: flex;  align-items: center;}.form view:first-child {  border-top: 0;}.form view text {  font-size: 32rpx;}.form view input {  flex: 1;  margin-left: 30rpx;  font-size: 32rpx;}.order {  width: 100%;  background-color: #fff;  margin-top: 20rpx;  display: flex;  flex-direction: column;}.line {  width: 100%;  height: 20rpx;  background: #f5f5f5;}.discount {  width: 100%;  height: 98rpx;  border-bottom: 1px solid #e2e2e2;  box-sizing: border-box;  padding: 0 42rpx;  display: flex;  flex-direction: row;  justify-content: space-between;  align-items: center;}.discount image {  width: 20rpx;  height: 20rpx;}.discounttext {  font-size: 32rpx;}.coupon{  height: 32rpx;  /* display: flex;  flex-direction: row;  justify-content: center;  align-items: center; */}.coupon text {  color: #5d4f8e;  font-size: 30rpx;  margin-right: 8rpx;}.pay {  width: 100%;  box-sizing: border-box;  /* padding: 50rpx 0rpx; */  display: flex;  flex-direction: column;}.paytext {  font-size: 32rpx;  margin-bottom: 30rpx;  margin-top: 30rpx;  text-indent: 30rpx;}.payment {  width: 100%;  display: flex;  flex-direction: column;}.paymentview {  width: 100%;  height: 106rpx;  box-sizing: border-box;  border-top: 1px solid #efefef;  display: flex;  flex-direction: row;  justify-content: space-between;  align-items: center;  padding: 0 70rpx 0 30rpx;}.paymentviewview {  height: 100%;  display: flex;  flex-direction: row;  align-items: center;}.paymentviewviewimage {  width: 42rpx;  height: 42rpx;}.paymentviewimage {  width: 42rpx;  height: 42rpx;}.payment view text {  font-size: 32rpx;  color: #666;  margin-left: 16rpx;}.tips {  width: 100%;  margin-top: 10rpx;  /* margin-bottom: 140rpx; */  box-sizing: border-box;  padding: 0 42rpx;  display: flex;  flex-direction: column;}.tips image {  width: 28rpx;  height: 28rpx;  margin-right: 10rpx;}.tips text{  font-size: 30rpx;  color: #999;  line-height: 48rpx;}.tips .tips-text {  font-size: 30rpx;  color: #999;  line-height: 48rpx;}.tips view {  display: flex;  flex-direction: row;  align-items: center;  margin-bottom: 12rpx;}.submit {  width: 100%;  height: 95rpx;  border-top: 1px solid #efefef;  position: fixed;  bottom: 0;  left: 0;  z-index: 99;  background-color: #fff;  display: flex;  flex-direction: row;  justify-content: space-between;  align-items: center;}.submit-deatils {  flex: 1;  display: flex;  flex-direction: row;  box-sizing: border-box;  padding-left: 74rpx;  align-items: baseline;  line-height: 1;}.details image {  width: 16rpx;  height: 16rpx;}.submit-btn::after {  border-radius: 0;}.submit-btn {  width: 284rpx;  height: 100%;  background-color: #ceab67;  display: flex;  justify-content: center;  align-items: center;  border: 0;  outline: none;  border-radius: 0;  color: #fff;}.submit-btn text {  font-size: 36rpx;  color: #fff;}.symbol {  font-size: 32rpx;}.price {  font-size: 48rpx;  font-family:DIN;}.details {  display: flex;  flex-direction: row;  align-items: center;  margin-left: 50rpx;  font-size: 30rpx;}.details text {  margin-right: 8rpx;}.shade-box {  position: fixed;  width: 100%;  height: 100%;  background-color: rgba(0, 0, 0, 0.3);  top: 0;  left: 0;  z-index: 999;}.shade {  width: 100%;  height: 600rpx;  background-color: #fff;  position: absolute;  bottom: 0;  left: 0;  box-sizing: border-box;  padding: 70rpx 48rpx 0 58rpx;  display: flex;  flex-direction: column;}.shade text {  font-size: 36rpx;  color: #000;  line-height: 1;}.shade .order-item {  display: flex;  flex-direction: row;  justify-content: space-between;  margin-top: 30rpx;}.shade image {  width: 28rpx;  height: 28rpx;  padding: 30rpx 48rpx 0 0;  position: absolute;  top: 0;  right: 0;  z-index: 9999;}.total {  display: flex;  flex-direction: row;  align-items: baseline;  justify-content: flex-end;  margin-top: 50rpx;}.total text:first-child {  font-size: 36rpx;  color: #000;}.total text:nth-child(2) {  font-size: 28rpx;  color: #ceab67;}.total text:nth-child(3) {  font-size: 36rpx;  font-family:DIN;  color: #ceab67;}.member-pay{  width: 560rpx;  height: 300rpx;  background: #fff;  position: absolute;  top: 0;  left: 0;  bottom: 0;  right: 0;  margin: auto;  border-radius: 20rpx;  display: flex;  display: -webkit-flex;  flex-direction: column;  justify-content: space-between;  align-items: center;}.member-money{  text-align: center;  font-size: 30rpx;  color: #333;  margin-top: 30rpx;}.member-money text{  font-family: DIN;  font-weight: 500;  color: #333;  font-size: 40rpx;}.member-pay input{  width: 480rpx;  height: 80rpx;  border: 1px solid #efefef;  border-radius: 6rpx;  font-size: 30rpx;  color: #333;  box-sizing: border-box;  padding: 0 30rpx;}.member-btn{  width: 100%;  height: 80rpx;  display: flex;  display: -webkit-flex;  flex-direction: row;  border-top: 1px solid #efefef;}.member-btn view{  flex: 1;  display: flex;  display: -webkit-flex;  flex-direction: row;  justify-content: center;  align-items: center;}.member-btn view:first-child{  border-right: 1px solid #efefef;}小程序代码:js// pages/order/index.jsvar Moment = require(“../../utils/moment.js”);const WxParse = require(‘../../wxParse/wxParse.js’);var DATE_LIST = [];var DATE_YEAR = new Date().getFullYear()var DATE_MONTH = new Date().getMonth() + 1var DATE_DAY = new Date().getDate();const app = getApp();const tool = app.utils;let post_data = {  payMent: ‘WXPAY’,  mpOpenId: ”,  openId: ”,  orderSn: ”,  companyId: ”}let post_coupons = {  totalFee: undefined,  profileId: undefined,  hotelCode: undefined,  roomCode: undefined,  rateCode: undefined}let post_member = {  payPwd: undefined}Page({  /**   * 页面的初始数据   */  data: {    roomNum: 1,    shade: false,    memberSubmit: true,    userName: ”,    mobile: ”,    num: 1,    contactName: ”,    price: 0,    cname: ”,    total: 0,    payMent: ‘WXPAY’,    bookingNoticeCdesc: ”,    cancelNoticeCdesc: ”,    showMbrcardpay: false  },  /**   * 生命周期函数–监听页面加载   */  onLoad: function(options) {    console.debug(“初始化数据:”, options);    this.setData({      cname: options.cname    })    tool.loading.show();    tool.https.post(‘/wxapp/hotel/booking.do’, options)      .then((res) = {        if (res.success) {          console.debug(“客房数据查询结果:”, res);          let query = res.obj.query;          this.serialQueryObj(query, res.obj);          console.debug(“query 对象序列化结果:”, query);          if (res.obj.roomPrices[0].bookingNoticeCdesc != null) {            let bookingNoticeCdesc = res.obj.roomPrices[0].bookingNoticeCdesc;            WxParse.wxParse(‘article’, ‘html’, bookingNoticeCdesc, this, 0);          }          if (res.obj.roomPrices[0].cancelNoticeCdesc != null) {            let cancelNoticeCdesc = res.obj.roomPrices[0].cancelNoticeCdesc;            WxParse.wxParse(‘a’, ‘html’, cancelNoticeCdesc, this, 0);          }          this.setData({            roomPrices: res.obj.roomPrices,            bookingNoticeCdesc: res.obj.roomPrices[0].bookingNoticeCdesc,            cancelNoticeCdesc: res.obj.roomPrices[0].cancelNoticeCdesc,            query: query,            arriveDate: query.arriveDate.substring(5, 10).replace(‘-‘, ‘/’),            leaveDate: query.leaveDate.substring(5, 10).replace(‘-‘, ‘/’),            roomNum: query.roomQty,            price: query.price.toFixed(2),            totalFee: query.totalFee.toFixed(2),            total: query.totalFee.toFixed(2)          });          post_coupons.hotelCode = query.hotelCode;          post_coupons.rateCode = query.rateCode;          post_coupons.roomCode = query.roomCode;          post_coupons.totalFee = res.obj.totalFee;          this.reqCouponsForHotel(); //加载优惠券          this.reqMemberVo();          tool.loading.hide();        }      }).catch((err) = {        tool.loading.hide();      });    post_data.payMent = this.data.payMent;  },  reqCouponsForHotel() {    console.info(“请求-优惠券-param:”, post_coupons);    tool.https.post(‘/wxapp/memberCoupon/getCouponsForHotel.do’, post_coupons).then(res = {      console.info(“请求-优惠券-成功:”, res);      this.setData({        couponsObj: res.obj      });    }).catch(err = {      console.info(“请求-优惠券-失败:”, err);    });  },  reqMemberVo() {    let payMent = this.data.query.payMent;    if (tool.string.isEmpty(payMent)) {      return true;    }    if (payMent.indexOf(“mbrcardpay”) == -1) {      this.setData({        showMbrcardpay: false      });      return true;    }    tool.https.gett(“/wxapp/member/getMemberVo2.do”).then(res = {      console.info(“请求-会员信息-成功:”, res);      if (res.success && tool.string.isNotEmpty(res.obj) && tool.string.isNotEmpty(res.obj.profileId)) {        this.setData({          showMbrcardpay: true,          memberVo: res.obj        });      }    }).catch(err = {      console.info(“请求-会员信息-失败:”, err);    });  },  //序列化 query 对像  serialQueryObj: function(dest, src) {    for (let k in src) {      if (k == ‘query’ || k == ‘roomPrices’) continue;      dest[k] = src[k];    }  },  // 房间数量减法操作  onMinus: function(event) {    if (this.data.roomNum 1) {      var minusNum = this.data.roomNum – 1;      // var totalMoney = minusNum * this.data.totalFee;      this.setData({        roomNum: minusNum        // total: totalMoney.toFixed(2)      })    } else {      this.setData({        roomNum: 1      })    }    this.updateTotalFee();  },  // 点击显示明细  onShade: function(event) {    this.setData({      shade: !this.data.shade    })  },  onClose: function(event) {    this.setData({      shade: !this.data.shade    })  },  // 获取预订人信息  reserveInput: function(e) {    this.setData({      contactName: e.detail.value    })  },  // 获取入住人输入的信息  nameInput: function(e) {    this.setData({      userName: e.detail.value    })  },  // 获取输入的电话号码  telInput: function(e) {    this.setData({      mobile: e.detail.value    })  },  /**   * 表单提交   */  formSubmit: function(e) {    console.log(e)    //TODO 校验表单    var userName = this.data.userName;    var mobile = this.data.mobile;    var contactName = this.data.contactName;    var phonetel = /^(((13[0-9]{1})|(14[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1}))+d{8})$/;    var name = /^[u4E00-u9FA5]+$/;    if (contactName == ”) {      wx.showToast({        title: ‘请输入预订人’,        icon: ‘none’,        duration: 1500,        mask: true      })      return false    } else if (userName == ”) {      wx.showToast({        title: ‘请输入入住人’,        icon: ‘none’,        duration: 1500,        mask: true      })      return false    } else if (mobile == ”) {      wx.showToast({        title: ‘手机号不能为空’,        icon: ‘none’,        duration: 1500      })      return false    } else if (mobile.length != 11) {      wx.showToast({        title: ‘手机号长度有误!’,        icon: ‘none’,        duration: 1500      })      return false;    } else if (!phonetel.test(mobile)) {      wx.showToast({        title: ‘手机号有误!’,        icon: ‘none’,        duration: 1500      })      return false;    } else {      let form_data = e.detail.value;      form_data.mpOpenId = app.globalData.openId;      form_data.formId = e.detail.formId;      console.log(‘form发生了submit事件,提交数据:’, JSON.stringify(form_data));      tool.loading.show(‘订单生成中’, true);      tool.https.post(‘/wxapp/hotel/order/save.do’, form_data)        .then((res) = {          if (res.success) {            tool.loading.show(‘订单校验’, true);            this.orderSubmit();          } else {            console.info(“订单生成异常:”, res);            tool.modal.showToast(res.errmsg);          }        })        .catch((err) = {          console.error(“订单生成错误:”, err);          tool.modal.showToast(“网络异常0,稍后再试”);        });    }  },  //提交订单  orderSubmit: function() {    // let post_data = {    //   payMent: ‘WXPAY’,    //   mpOpenId: app.globalData.openId    // }    post_data.mpOpenId = app.globalData.openId    tool.https.post(‘/wxapp/hotel/order/submit.do’, post_data)      .then((res) = {        if (res.success && res.errmsg != ”) {          console.log(post_data);          tool.loading.show(‘校验成功’, true);          post_data.orderSn = res.errmsg;          if (post_data.payMent == ‘WXPAY’) { //微信支付            this.wxPay(res.errmsg);          } else if (post_data.payMent == ‘OFFLINEPAY’) { //到店支付            console.log(“到店支付结果:”, res);            tool.loading.show(‘预定成功’, true);            this.toOrderPage(res.errmsg);          } else if (post_data.payMent == ‘BALANCEPAY’) {            tool.loading.hide();            this.setData({              memberSubmit: false            });          }        } else {          console.info(“提交订单异常:”, res);          tool.modal.showToast(res.errmsg);        }      })      .catch((err) = {        tool.loading.hide();        console.error(“提交订单错误:”, err);        tool.modal.showToast(“网络异常1,稍后再试”);      });  },  //微信支付  wxPay: function(orderSn) {    // let post_data = {    //   openId: app.globalData.openId,    //   orderSn: orderSn,    //   companyId: app.globalData.comid    // }    post_data.openId = app.globalData.openId;    post_data.orderSn = orderSn;    post_data.companyId = app.globalData.comid    tool.loading.show(‘支付校验’, true);    tool.https.post(‘/wxapp/pay/sign2.do’, post_data).then(res = {        tool.loading.hide();        if (res.success) {          wx.requestPayment({            timeStamp: res.obj.timeStamp,            nonceStr: res.obj.nonceStr,            package: res.obj.package,            signType: res.obj.signType,            paySign: res.obj.paySign,            success: msg = {              console.info(“微信支付成功”, msg);              this.toOrderPage(post_data.orderSn);            },            fail: function(msg) {              console.info(“微信支付失败”, msg);            }          })        } else {          console.error(res);          tool.modal.showToast(res.errmsg, ‘none’, true);        }      })      .catch(err = {        console.error(err);      });  },  //会员卡支付  onBalancePay(orderSn) {    post_data.openId = app.globalData.openId;    // post_data.orderSn = orderSn;    post_data.companyId = app.globalData.comid;    let balance = this.data.memberVo.balance;    let totalFee = this.data.total;    if (totalFee balance) {      tool.modal.showToast(“余额不足”);      return false;    }    post_data.payPwd = post_member.payPwd;    post_data.mbrCardNo = this.data.memberVo.mbrCardNo;    console.info(“表单-会员卡支付数据:”, post_data);    tool.loading.show(‘密码校验’, true);    tool.https.post(“/wxapp/pay/balance.do”, post_data).then(res = {      console.info(“请求-会员卡支付-成功:”, res);      tool.loading.hide();      if (res.success) {        this.toOrderPage(post_data.orderSn);        return true;      }      tool.modal.showToast(res.errmsg);    }).catch(err = {      console.info(“请求-会员卡支付-失败:”, err);    });  },  bindinputPwd(e) { //输入密码    post_member.payPwd = e.detail.value;  },  //跳转到订单页面  toOrderPage: function(orderSn) {    wx.navigateTo({      url: ‘../orderAffirm/index?orderSn=’ + orderSn,    });  },  // 房间数量加法操作  onAdd: function(event) {    var addNum = this.data.roomNum + 1;    // var totalMoney = addNum * this.data.totalFee;    this.setData({      roomNum: addNum    });    this.updateTotalFee();  },  // 点击选择微信支付  onWxPay: function() {    post_data.payMent = ‘WXPAY’;    this.setData({      payMent: post_data.payMent    });  },  // 点击选择到店支付  onStorePay: function() {    post_data.payMent = ‘OFFLINEPAY’;    this.setData({      payMent: post_data.payMent    });  },  // 点击选择会员卡支付  onMemberPay: function() {    post_data.payMent = ‘BALANCEPAY’;    this.setData({      payMent: post_data.payMent    });  },  // 点击关闭会员卡支付密码框  closeMember: function() {    this.setData({      memberSubmit: true    })  },  // 点击跳转到红包页面  onCoupon: function(event) {   if(!this.data.showMbrcardpay){     return;   }    wx.navigateTo({      url: ‘../coupon/index’,    });  },  onUseCouponByIndex(index) {    let coupon = this.data.couponsObj.coupons[index];    if (tool.string.isEmpty(coupon)) {      return false;    }    let thatQuery = this.data.query;    if (coupon.isAble) { //可用      thatQuery.couponSeqid = coupon.seqid;      thatQuery.chargeamt = coupon.chargeamt;    } else {      thatQuery.couponSeqid = ”;      thatQuery.chargeamt = 0;    }    this.setData({      query: thatQuery    });    this.updateTotalFee(); //更新总价格    // console.info(“使用优惠券的数组索引:”,index);  },  updateTotalFee() {    let roomnum = this.data.roomNum; //数量    let price = this.data.price; //单价    let couponPrice = 0; //优惠价格    if (tool.string.isEmpty(roomnum)) {      roomnum = 1;    }    if (tool.string.isNotEmpty(this.data.query.couponSeqid)) {      couponPrice = this.data.query.chargeamt;    }    let totalMoney = roomnum * price;    let payMoney = totalMoney – couponPrice;    this.setData({      total: payMoney.toFixed(2),      totalMoney: totalMoney.toFixed(2)    });  },  /**   * 生命周期函数–监听页面初次渲染完成   */  onReady: function() {  },  /**   * 生命周期函数–监听页面显示   */  onShow: function() {},  /**   * 生命周期函数–监听页面隐藏   */  onHide: function() {  },  /**   * 生命周期函数–监听页面卸载   */  onUnload: function() {  },  /**   * 页面相关事件处理函数–监听用户下拉动作   */  onPullDownRefresh: function() {  },  /**   * 页面上拉触底事件的处理函数   */  onReachBottom: function() {  },  /**   * 用户点击右上角分享   */  onShareAppMessage: function() {  }})  优惠券demo: https://blog.csdn.net/HECTOR_1368391900/article/details/99867725

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 小程序提交订单选择支付类型demo
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏