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/ ...
随机推荐
- 服务篇:我的第一WebService应用
一.我的第一个Webservice应用 1.新建一个空项目 2.添加新项,加入asmx,并再浏览器浏览 3.添加一个aspx网页 4.右键引用→添加服务引用→高级→添加Web引用,输入再浏览器浏览的a ...
- 转 实现类似QQ的窗体停靠
[DllImport("User32.dll")] public static extern bool PtInRect(ref Rectangle Rects, Point lp ...
- IO中断
>>>io的中断编程 以上例程会有什么问题呢? 注意:CPU内部寄存器
- 一、openfeign的自动配置
所有文章 https://www.cnblogs.com/lay2017/p/11908715.html 正文 openfeign是一种声明式的webservice客户端调用框架.你只需要声明接口和一 ...
- 七年总结常用 Git 命令清单
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- Android笔记(十九) Android中的Fragment
通常我们使用Activity来展示界面,但是在手机上界面可能显示的很好看,但在平板上,因为平板的屏幕非常大,手机的界面放在平板上可能会出现控件被拉长.控件之间间距变大等问题.为了更好的体验效果,在Ac ...
- javascript之位置
1.offset()获取匹配元素在相对浏览器窗口的偏移量 返回一个对象,包括两个属性.left:相对浏览器窗口左边的距离.top:相对浏览器顶部的距离. $("#div1").o ...
- 【DRF框架】序列化组件
DRF框架的序列化组件 在前后端分离的应用模式中,后端仅返回前端所需的数据,返回的数据类似是JSON,因此需要使用序列化组件进行序列化再将数据返回 使用JsonResponse做序列化 # 使用Js ...
- Resource接口
[转]https://blog.csdn.net/hbtj_1216/article/details/85487787 参考:官方文档 1 简介 Java标准库中的java.net.URL类和标准处理 ...
- html简单知识
一.html标签的特征: 1.空白折叠现象 2.对空格和换行不敏感 3.标签要严格封闭 二.p标签的嵌套 p中只能存放字体.图片.表单控件,不能放盒子标签 三.html中标签的分类 1.行内标签 在一 ...