payOrder
parent
<script>
export default class Parents extends wepy.page {
data = {
tabdata:{}, //下面要用这里必须要写上
}
async onLoad() {
let data = await getData(,"public/data",{session_key:"1234456"});
this.tabdata= data.tab;
this.$apply();//必须
}
}
</script>
<template lang="wxml">
<view class="title" slot="title"></view>
<view class="title" slot="content">
<Tab :tab.sync="tabdata" ></Tab>
</view>
</template>
child
<template lang="wxml">
<view class="title" slot="title">{{tab}}</view>
</template>
export default class Tab extends wepy.component {
props = {
tab:{
type:Object,
default:null,
twoWay:true
}
}
payOrder(e) {
let _this = this
payOrder(e.currentTarget.id).then(res => {
if (res && res.data) {
if (res.data.code) {
_this.$invoke('toast', 'showToast', {
title: res.data.message,
time: 1000
})
_this.isClick = false
return
}
}
wx.requestPayment({
timeStamp: res.timeStamp,
nonceStr: res.nonceStr,
package: res.package,
signType: 'MD5',
paySign: res.sign,
success: function(_res) {
console.log('orderItem=>payOrder=>支付成功', _res)
wx.navigateTo({
url: `/pages/pay-success-page?orderNo=${res.orderNo}`
})
_this.toDoWhatUShouldDo(e, 2)
},
fail: function(err) {
console.log('orderItem=>payOrder=>支付失败', err)
}
})
})
},
this.couponList[e.currentTarget.id].type
chooseCoupon(e) {
// 是否用默认优惠券
this.useDefaultCoupon = 0
// 判断选择优惠券类型 不同型要取消重选
if (!this.couponList[e.currentTarget.id].chosen) {
let isChangeType = this.judgeChosen(
this.couponList[e.currentTarget.id].type
)
if (isChangeType === 0) {
this.$invoke('toast', 'showToast', {
title: '如需更换优惠券,请先取消当前优惠券',
time: 500
})
return
}
}
_getOrderList(status, fn, refresh) {
let _status = ''
if (parseInt(status)) {
_status = status
}
if (this.over) {
return
}
getOrderList(_status, this.page++)
.then(res => {
if (res.length === 0) {
this.over = true
} else {
// 初始化列表 添加唯一标识index 倒计时初始值
res &&
res.map((el, index) => {
// 订单商品奇偶背景色
el.detailList.map(e => {
e.odd = this.pNum % 2
this.pNum++
})
el.index = index + (this.page - 2) * 10
el.createTime = format(el.createTime, 8)
el.currentPage = _status
console.log('order-page==>expireTime', el.expireTime)
let minutes = parseInt((el.expireTime / 1000 / 60) % 60, 10)
let seconds = parseInt((el.expireTime / 1000) % 60, 10)
el.overTime = `${minutes >= 10 ? minutes : '0' + minutes}:${
seconds >= 10 ? seconds : '0' + seconds
}`
console.log('order-page==>el.overTime', el.overTime)
})
if (refresh) {
this.orderList = []
}
this.orderList = this.orderList.concat(res)
this.delay = false
fn && fn()
}
this.showEmpty = true
this.$apply()
console.log('order-page=>getOrderList=>订单列表', this.orderList)
})
.catch(err => {
this.delay = false
console.log('order-page=>getOrderList=>订单列表错了err', err)
})
}
payOrder的更多相关文章
- iOS中支付宝集成
iOS中支付宝集成 如今各种的App中都使用了三方支付的功能,现在将我在使用支付宝支付集成过程的心得分享一下,希望对大家都能有所帮助 要集成一个支付宝支付过程的环境,大致需要: 1>公司:先与支 ...
- 在多线程编程中lock(string){...}隐藏的机关
常见误用场景:在订单支付环节中,为了防止用户不小心多次点击支付按钮而导致的订单重复支付问题,我们用 lock(订单号) 来保证对该订单的操作同时只允许一个线程执行. 这样的想法很好,至少比 lock( ...
- iOS-集成支付宝支付、微信支付简单总结
支付宝快捷支付: 官方文档中,支付宝说建议我们使用支付时要讲签名过程放在服务器端,这样安全.同时给的demo中签名是在本地移动端做的...不过支付宝的集成还是较简单的. 为了安全签名当然放后台做了.我 ...
- WebService的使用
转载至http://blog.csdn.net/yexuanbaby/article/details/9029605/ 第一次选择WebService,是为了替代数据库远程连接.我们都知道当SQL允许 ...
- iOS支付宝支付总结
1.按照http://doc.open.alipay.com/doc2/detail?spm=0.0.0.0.SWdJgo&treeId=59&articleId=103676& ...
- ***CodeIgniter集成微信支付(转)
微信支付Native扫码支付模式二之CodeIgniter集成篇 http://www.cnblogs.com/24la/p/wxpay-native-qrcode-codeigniter.html ...
- iOS----支付(微信支付、支付宝支付、银联支付控件集成支付)(转)
资料 支付宝 //文档idk都包含了安卓.iOS版 银 联 银联官网资料 Demo Demo给了一个订单号,做测试使用,若出现支付失败什么的,可能是已经被别人给支付了,或者是服务器订单过期了 ~ 一. ...
- Batsing的网页编程规范(HTML/CSS/JS/PHP)
特别注意!!!我这里的前端编程规范不苟同于Bootstrap的前端规范. 因为我和它的目的不同,Bootstrap规范是极简主义,甚至有些没有考虑到兼容性的问题. 我的规范是自己从编程实践中总结出来的 ...
- 微信支付Native扫码支付模式二之CodeIgniter集成篇
CI:3.0.5 微信支付API类库来自:https://github.com/zhangv/wechat-pay 请先看一眼官方场景及支付时序图:https://pay.weixin.qq.com/ ...
随机推荐
- 最简容器化动手小实践——再战flappybird
<Flappy Bird>是一名越南开发者所开发的游戏,这款游戏的主要内容是帮助一只小鸟穿越水管的层层阻碍,玩家所需要的只是点击屏幕从而调整小鸟的高度.而令这款游戏与众不同的是,这款游戏的 ...
- interface Part4(接口中的多态)
使用接口实现多态 需要满足以下两个条件. 定义接口并使用类实现了接口中的成员. 创建接口的实例指向不同的实现类对象. 假设接口名称为 ITest,分别定义两个实现类来实现接口的成员,示例代码如下. i ...
- 测试人员必须掌握的linu常用命令
有些公司需要测试人员部署程序包,通过工具xshell. 现在我将总结下工作需要用到的最多的命令 ls 显示文件或目录 pwd ...
- glance
第二篇glance— 镜像服务 一.glance介绍: Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供 ...
- stm32 FSMC-TFTLCD显示
TFTLCD TFT液晶屏常用的通信模式主要有6800模式和8080模式,对于TFT彩屏通常都使用8080并口(简称80并口)模式 8080模式的读写时序其实跟LCD1602或者LCD12864的读写 ...
- 【SpringMVC】统一异常处理
一.需求 二.统一异常处理解决方案 2.1 定义异常 2.2 异常处理 2.3 配置统一异常处理器 2.4 异常处理逻辑 一.需求 一般项目中都需要作异常处理,基于系统架构的设计考虑,使用统一的异常处 ...
- Wechat alert
企业微信号登录--注册企业号或者企业微信 添加子部门 部门添加成员 创建应用 需要接收告警的人员关注企业号 企业号已经被部门成员关注 企业号有一个可以发送消息的应用,一个授权管理员,可以使用应用给成员 ...
- DHCP服务——服务端 和 客户端 配置
转载注明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9520341.html 实验环境 rhel-server-6.4-x86_64-dvd(ED2000 ...
- UltraISO 软碟通注册(亲测!!!)
声明:本文仅限学习者共享使用,请勿用来商业行为,否则后果自负!!! 强烈建议!!!支持正版购买通道,请走这里. 免费下载UltralSO软碟通 首先当然是下载安装UltraISO软件,不然怎么** ...
- Oracle基础知识【1】
目录: 1.Oracle创建库.表 2.Oracle数据怎删查改操作 3.Oracle数据约束条件 Oracle创建库.表: create user user05 identified by 1234 ...