1. 支付按钮
<van-submit-barprice="{{ allGoodsAndYunPrice*100 }}"suffix-label="+{{totalScoreToPay}} 积分"button-text="提交订单"bind:submit="goCreateOrder"
/>
  1. js
const wxpay = require('../../utils/pay.js')'
//去创建订单
goCreateOrder(){//检测实名认证状态//创建订单
this.createOrder(true)
}
//创建订单
createOrder(){var that = this;
var loginToken = wx.getStorageSync('token') // 用户登录 token
var remark = this.data.remark; // 备注信息
let postData = { //创建订单需要的参数token: loginToken,//tokengoodsJsonStr: that.data.goodsJsonStr, //购买的商品数据列表remark: remark,//备注信息peisongType: that.data.peisongType// // 配送方式 kd,zq 分别表示快递/到店自取};//调用创建订单接口,传递此次订单相关数据
WXAPI.orderCreate(postData).then(function (res) {that.data.pageIsEnd = true if (res.code != 0) {that.data.pageIsEnd = falsewx.showModal({title: '错误',content: res.msg,showCancel: false})return;}if ("buyNow" != that.data.orderType) { //订单类型,购物车下单或立即支付下单,默认是购物车,// 清空购物车数据WXAPI.shippingCarInfoRemoveAll(loginToken)}that.setData({totalScoreToPay: res.data.score, //积分isNeedLogistics: res.data.isNeedLogistics, 是否需要物流信息allGoodsAndYunPrice: res.data.amountReal,//总价=总商品价+总运费yunPrice: res.data.amountLogistics,//运费hasNoCoupons,//没有优惠券coupons,//优惠券couponAmount: res.data.couponAmount //优惠金额});that.data.pageIsEnd = falsereturn;}//创建订单后的操作that.processAfterCreateOrder(res)})//创建订单后的操作  async processAfterCreateOrder(res) {// 直接弹出支付,取消支付的话,去订单列表const balance = this.data.balanceif (balance || res.data.amountReal*1 == 0) {// 有余额const money = (res.data.amountReal * 1 - balance*1).toFixed(2)if (money <= 0) {// 余额足够wx.showModal({title: '请确认支付',content: `您当前可用余额¥${balance},使用余额支付¥${res.data.amountReal}?`,confirmText: "确认支付",cancelText: "暂不付款",success: res2 => {if (res2.confirm) {// 使用余额支付,传token,和订单idWXAPI.orderPay(wx.getStorageSync('token'), res.data.id).then(res3 => {if (res3.code != 0) {wx.showToast({title: res3.msg,icon: 'none'})return}wx.redirectTo({url: "/pages/order-list/index"})})} else {wx.redirectTo({url: "/pages/order-list/index"})}}})} else {// 余额不够wx.showModal({title: '请确认支付',content: `您当前可用余额¥${balance},仍需支付¥${money}`,confirmText: "确认支付",cancelText: "暂不付款",success: res2 => {if (res2.confirm) {// 使用余额支付wxpay.wxpay('order', money, res.data.id, "/pages/order-list/index");} else {wx.redirectTo({url: "/pages/order-list/index"})}}})}} else {// 没余额wxpay.wxpay('order', res.data.amountReal, res.data.id, "/pages/order-list/index");}},
//查看用户资产async userAmount() {const res = await WXAPI.userAmount(wx.getStorageSync('token'))if (res.code == 0) {this.setData({balance: res.data.balance})}},
}  
const WXAPI = require('apifm-wxapi')/*** type: order 支付订单 recharge 充值 paybill 优惠买单* data: 扩展数据对象,用于保存参数*/
function wxpay(type, money, orderId, redirectUrl, data) {WXAPI.wxpay(postData).then(function (res) {if (res.code == 0) {// 发起支付wx.requestPayment({timeStamp: res.data.timeStamp, //时间戳nonceStr: res.data.nonceStr,,//随机字符串package: res.data.package,//订单详情扩展字符串signType: res.data.signType//签名方式paySign: res.data.paySign,//签名fail: function (aaa) {console.error(aaa)wx.showToast({title: '支付失败:' + aaa})},success: function () {// 提示支付成功wx.showToast({title: '支付成功'})wx.redirectTo({url: redirectUrl});}})} else {wx.showModal({title: '出错了',content: JSON.stringify(res),showCancel: false})}})
}module.exports = {wxpay: wxpay
}

天使童装微信小程序支付相关推荐

  1. 天使童装微信小程序支付流程:

    (商城余额支付,优惠支付,积分抵消,微信支付) 前台后台 系统后台 微信后台 :三部分 流程:点击下单按钮,请求下单支付,后端返回支付参数,收到5个参数之后输入密码确认用户支付 输入密码是跟小程序 小 ...

  2. 微信小程序asp服务器架设,asp写的微信小程序支付demo-服务器端是asp+mdb的

    这个微信小程序支付demo代码是我用asp写的,微信小程序端加上服务器端用的asp和mdb数据库,下面是代码分享: 订单说明:{{paydata.title}} 支付金额:分 支付 --------- ...

  3. 微信小程序支付最容易犯的坑notify_url(支付回调)

    最近做了微信小程序支付,支付成功之后发现notify_url回调地址竟然没有访问. 检查了无数次代码,下单结果里面的回调地址看了又看,都没有错啊. 把回调地址复制出来到浏览器上面,外网也是可以访问的啊 ...

  4. 微信小程序php后台支付,微信小程序 支付功能实现PHP实例详解

    微信小程序 支付功能实现PHP实例详解 前端代码: wx.request({ url: 'https://www.yourhost.com/weixin/WeiActivity/payJoinfee' ...

  5. .NET Core 微信小程序支付——(统一下单)

    最近公司研发了几个电商小程序,还有一个核心的电商直播,只要是电商一般都会涉及到交易信息,离不开支付系统,这里我们统一实现小程序的支付流程(与服务号实现步骤一样). 目录 1.开通小程序的支付能力 2. ...

  6. python个人微信支付接口_Python实现微信小程序支付功能

    正文 由于最近自己在做小程序的支付,就在这里简单介绍一下讲一下用python做小程序支付这个流程.当然在进行开发之前还是建议读一下具体的流程,清楚支付的过程. 1.支付交互流程 2.获取openid( ...

  7. 加入域时出现以下错误 登陆失败 该目标账户名称不正确_微信支付踩坑合集:微信小程序支付失败是什么原因?持续更新...

    微信小程序开发的过程一定会遇到各种问题,最让人棘手的就是支付问题,因为没有支付做商城类似的小程序就没有办法完成最关键的一步.那么支付失败到底什么原因呢?一下子收集了几个错误类似,希望对你有帮助: No ...

  8. 微信小程序支付异常:requestPayment:fail no permission

    微信小程序支付异常:requestPayment:fail no permission 参考文章: (1)微信小程序支付异常:requestPayment:fail no permission (2) ...

  9. 微信小程序支付-付款(Java后台)

    微信小程序支付-付款(Java后台) 一.概述 接触微信小程序支付有一段时间,趁着项目上线空闲期,来总结一下付款.退款.提现到银行卡.查询流水等步骤过程,涉及到的知识,以及编程过程中需要注意的问题. ...

最新文章

  1. 前端测试 karma mocha should 都是什么鬼?
  2. 能买到鸿蒙系统,哪里能买到鸿蒙系统的设备?
  3. fraction函数的分数处理
  4. 为什么一个java源文件中只能有一个public类
  5. 将两大小完全相同的照片进行加权混合对比
  6. PAT甲级1080 Graduate Admission【模拟】
  7. WPF ListBox(ListView) 自定义 Button 项,获取 ListBox(ListView)的SelectedValue
  8. PDF文件能编辑吗,怎么删除PDF文档中的空白页
  9. html 并集选择器,HTML+CSS基础 并集选择器
  10. 广东南方地形地籍成图软件CASS10.1十大新亮点(资源下载在文尾)
  11. 达观数据助力浙江大华构建企业级知识搜索共享平台,盘活沉淀数据
  12. matlab绘制不同线性的直方图,Matlab绘制柱状图采用不同图案填充
  13. EPLAN 电气工程图纸
  14. 论文解读--Multi-class Road User Detection with 3+1D Radar in the View-of-Delft Dataset
  15. C/C++超级大火锅
  16. PHP字符串变量的长度限制问题
  17. 鸿蒙App开发(1)---初识鸿蒙开发
  18. GPU地址空间的相关概念
  19. Matlab:拉盖尔-高斯光束杨氏双缝干涉
  20. [转帖]PostgreSQL 昨天,今天和明天

热门文章

  1. DELL 暗夜精灵无法进入BIOS系统
  2. 2014中国城市“鬼城”指数排行榜发布
  3. iOS列表优化(转载)
  4. 3.1_15 JavaSE入门 P14 【多线程】同步、匿名内部类、死锁、生命周期
  5. 如何设置透明色RGB值
  6. 大一学生web课程实训大作业 (静态美食网页制作)
  7. 如何十天系统的学会STM32
  8. 手机数控模拟器安卓版_数控机床模拟器手机版下载-数控机床模拟器 安卓版v1.1.4-PC6手游网...
  9. 华为手机的分类有何区别_华为手机的各个系列有什么不同?
  10. 黑石服务器性能,腾讯云将推出多款黑石新品,还说物理服务器需求很强烈