会员模块
This commit is contained in:
246
pages/order/list/index.js
Normal file
246
pages/order/list/index.js
Normal file
@@ -0,0 +1,246 @@
|
||||
/*
|
||||
* 手太欠
|
||||
* 愿这世界都如故事里一样 美好而动人~
|
||||
*/
|
||||
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
listType : 'unpay', //unpay待付款, paid待发货,delivered已发货,signed已签收 completed已完成
|
||||
orderArr : [], //订单列表
|
||||
disabled : false,
|
||||
surplus : '', // 水滴数量
|
||||
orderNo : '', // 订单编号
|
||||
payEject : false, // 支付弹出
|
||||
payType : 'wechat' //支付类型 wechat微信 water水滴兑换
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
this.setData({
|
||||
listType: options.listType
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
// 获取订单列表
|
||||
this.ordersInfo();
|
||||
|
||||
// 获取用户信息
|
||||
this.userInfo();
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户信息
|
||||
*/
|
||||
userInfo() {
|
||||
wx.$api.user.home().then(res => {
|
||||
this.setData({
|
||||
surplus : res.data.account.score.surplus
|
||||
})
|
||||
}).catch(err => {})
|
||||
},
|
||||
|
||||
/**
|
||||
* 订单列表
|
||||
*/
|
||||
ordersInfo(page) {
|
||||
wx.$api.user.orders({
|
||||
state: this.data.listType,
|
||||
page : page
|
||||
}).then(res => {
|
||||
let listArr = this.data.orderArr,
|
||||
newData = []
|
||||
if(page == 1 || page == undefined) listArr = []
|
||||
newData = listArr.concat(res.data.data)
|
||||
this.setData({
|
||||
orderArr : newData,
|
||||
page : res.data.page,
|
||||
lodingStats : false
|
||||
})
|
||||
wx.stopPullDownRefresh()
|
||||
}).catch(err => {})
|
||||
},
|
||||
|
||||
/**
|
||||
* 状态筛选
|
||||
*/
|
||||
onTabs(val){
|
||||
if(this.data.listType === val) return
|
||||
this.setData({
|
||||
listType: val.currentTarget.dataset.type
|
||||
})
|
||||
|
||||
// 商品详情数据
|
||||
this.ordersInfo();
|
||||
},
|
||||
|
||||
/**
|
||||
* 选择支付方式
|
||||
*/
|
||||
radioChange(e) {
|
||||
this.setData({
|
||||
payType : e.detail.value
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 立即付款
|
||||
*/
|
||||
payTap(e) {
|
||||
this.setData({
|
||||
orderNo: e.currentTarget.dataset.no,
|
||||
payEject: true
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 立即付款-弹出关闭
|
||||
*/
|
||||
payClose() {
|
||||
this.setData({
|
||||
payEject: false
|
||||
})
|
||||
},
|
||||
|
||||
// 支付提交
|
||||
paySubmit() {
|
||||
this.setData({
|
||||
payEject: false
|
||||
})
|
||||
|
||||
if(this.data.payType == 'wechat') {
|
||||
this.wxPay()
|
||||
return
|
||||
}
|
||||
// this.data.payType == water 为水滴兑换
|
||||
this.waterPay()
|
||||
},
|
||||
|
||||
// 微信支付
|
||||
wxPay() {
|
||||
wx.showLoading({
|
||||
title: '支付中...',
|
||||
mask : true
|
||||
})
|
||||
let that = this
|
||||
|
||||
wx.login({
|
||||
success: res => {
|
||||
wx.$api.member.openid(res).then(openidRes => {
|
||||
wx.$api.member.wechatPay(this.data.orderNo, {
|
||||
type : 'miniapp',
|
||||
openid : openidRes.data
|
||||
}).then(PayRes => {
|
||||
wx.hideLoading()
|
||||
this.setData({
|
||||
disabled : true
|
||||
})
|
||||
let payInfo = JSON.parse(PayRes.data.wechat)
|
||||
wx.requestPayment({
|
||||
timeStamp: payInfo.timeStamp,
|
||||
nonceStr : payInfo.nonceStr,
|
||||
package : payInfo.package,
|
||||
paySign : payInfo.paySign,
|
||||
signType : payInfo.signType,
|
||||
success : payInfoRes=>{
|
||||
if(payInfoRes.errMsg == "requestPayment:ok"){
|
||||
wx.showToast({
|
||||
title: '支付成功',
|
||||
icon: 'none',
|
||||
duration: 2000,
|
||||
//显示透明蒙层,防止触摸穿透
|
||||
mask:true,
|
||||
success: function () {
|
||||
// 获取订单列表
|
||||
that.ordersInfo();
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
fail : res=>{
|
||||
wx.showToast({
|
||||
title: '支付失败',
|
||||
icon: 'none',
|
||||
duration: 500,
|
||||
//显示透明蒙层,防止触摸穿透
|
||||
mask:true,
|
||||
success: function () {
|
||||
// 获取订单列表
|
||||
that.ordersInfo();
|
||||
that.setData({
|
||||
listType: 'unpay'
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}).catch(err => {})
|
||||
}).catch(err => {})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
// 水滴兑换
|
||||
waterPay() {
|
||||
wx.showLoading({
|
||||
title: '水滴兑换中...',
|
||||
mask : true
|
||||
})
|
||||
let that = this
|
||||
|
||||
wx.$api.mall.affirmPay(this.data.orderNo, {gateway: 'miniapp'}).then(res => {
|
||||
wx.hideLoading()
|
||||
this.setData({
|
||||
disabled : true
|
||||
})
|
||||
wx.showToast({
|
||||
title: '兑换成功',
|
||||
icon: 'none',
|
||||
duration: 2000,
|
||||
//显示透明蒙层,防止触摸穿透
|
||||
mask:true,
|
||||
success: function () {
|
||||
// 获取订单列表
|
||||
that.ordersInfo();
|
||||
|
||||
that.setData({
|
||||
listType: 'unpay'
|
||||
})
|
||||
}
|
||||
})
|
||||
}).catch(err => {})
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
// 获取订单列表
|
||||
this.ordersInfo();
|
||||
},
|
||||
|
||||
/**
|
||||
* 上拉加载
|
||||
*/
|
||||
onReachBottom(){
|
||||
this.setData({
|
||||
lodingStats: true
|
||||
})
|
||||
let pageNumber = this.data.page.current
|
||||
if(this.data.page.has_more){
|
||||
pageNumber++
|
||||
// 获取订单列表
|
||||
this.ordersInfo(pageNumber);
|
||||
}
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user