feat: move project
This commit is contained in:
commit
4a940f28ba
97 changed files with 5047 additions and 0 deletions
141
pages/sharebuy/sharebuy.js
Normal file
141
pages/sharebuy/sharebuy.js
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
import C from '../../utils/constant';
|
||||
import * as F from '../../utils/func';
|
||||
import R from '../../utils/request';
|
||||
Page({
|
||||
data: {
|
||||
expireDate: '',
|
||||
price: '',
|
||||
shareId: '',
|
||||
isPay: false,
|
||||
orderNo: '',
|
||||
phone: '',
|
||||
username: '',
|
||||
tip_before_pay: '',
|
||||
tip_after_pay: '',
|
||||
buy_type: '',
|
||||
},
|
||||
onLoad(options) {
|
||||
const { id, orderNo } = options;
|
||||
if (orderNo) {
|
||||
this.setData({
|
||||
isPay: true,
|
||||
orderNo,
|
||||
})
|
||||
this.fetchOrder(orderNo);
|
||||
} else {
|
||||
R.get('/index.php/api/v1/get_share', { id }).then(({ model }) => {
|
||||
this.setData({
|
||||
shareId: id,
|
||||
price: F.formatePrice(model.price),
|
||||
expireDate: model.expire_time,
|
||||
tip_before_pay: model.tip_before_pay || '',
|
||||
tip_after_pay: model.tip_after_pay || '',
|
||||
buy_type: model.buy_type,
|
||||
});
|
||||
}).catch((e)=>{
|
||||
console.log('xxx',e);
|
||||
})
|
||||
R.get('/index.php/api/v1/view_share', { id });
|
||||
}
|
||||
},
|
||||
refresh() {
|
||||
if (this.data.orderNo) {
|
||||
this.fetchOrder(this.data.orderNo);
|
||||
}
|
||||
},
|
||||
fetchOrder(orderNo) {
|
||||
const that = this;
|
||||
return R.get('/index.php/api/v1/fetch_order_pay', { order_no: orderNo }).then(({ model }) => {
|
||||
console.log('payed', model);
|
||||
if (model.status === 'payed') {
|
||||
clearInterval(that.data.timer);
|
||||
wx.hideLoading();
|
||||
this.setData({
|
||||
isPay: true,
|
||||
orderNo,
|
||||
price: F.formatePrice(model.price),
|
||||
buy_type: model.buy_type,
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
checkOrderStatus(orderNo) {
|
||||
wx.showLoading({
|
||||
title: '确认支付中...',
|
||||
})
|
||||
this.data.timer = setInterval(() => {
|
||||
this.fetchOrder(orderNo).catch(() => {
|
||||
clearInterval(this.data.timer);
|
||||
});
|
||||
}, 1000);
|
||||
},
|
||||
goPay() {
|
||||
const that = this;
|
||||
if (this.data.shareId) {
|
||||
R.post('/index.php/api/v1/make_order', { share_id: this.data.shareId }).then(({ model: { order_no } }) => {
|
||||
that.data.orderNo = order_no;
|
||||
R.post('/index.php/api/v1/pay_order', { order_no }).then(({ model }) => {
|
||||
wx.requestPayment({
|
||||
...model,
|
||||
success(res) {
|
||||
wx.showToast({
|
||||
title: '支付成功',
|
||||
icon: 'success',
|
||||
duration: 2000,
|
||||
success() {
|
||||
that.checkOrderStatus(order_no);
|
||||
// this.setData({
|
||||
// isPay: true,
|
||||
// })
|
||||
}
|
||||
})
|
||||
},
|
||||
fail(res) {
|
||||
wx.showToast({
|
||||
title: '您已取消支付',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
// wx.redirectTo({
|
||||
// url: '/pages/shop/shop?path=user',
|
||||
// });
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
onShareAppMessage() {
|
||||
|
||||
},
|
||||
validate() {
|
||||
const { username, phone, orderNo, } = this.data;
|
||||
if (!username) {
|
||||
wx.showToast({ title: '请输入姓名', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!/^1\d{10}$/.test(phone)) {
|
||||
wx.showToast({ title: '请输入正确的手机号', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
submit() {
|
||||
if (!this.validate()) return;
|
||||
const {
|
||||
username, phone, orderNo,
|
||||
} = this.data
|
||||
R.post('/index.php/api/v1/mark_order_info', { name: username, phone, order_no: orderNo, }).then(({ model }) => {
|
||||
wx.showToast({
|
||||
title: '提交成功',
|
||||
icon: 'success',
|
||||
duration: 2000,
|
||||
success() {
|
||||
wx.redirectTo({
|
||||
url: '/pages/paylist/paylist?from=sharebuy',
|
||||
})
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue