297 lines
9.3 KiB
JavaScript
297 lines
9.3 KiB
JavaScript
var util = require('../../../utils/util.js');
|
|
var api = require('../../../config/api.js');
|
|
var timer = require('../../../utils/wxTimer.js');
|
|
var remaintimer = require('../../../utils/remainTime.js');
|
|
const pay = require('../../../services/pay.js');
|
|
const app = getApp()
|
|
|
|
// TODO 拼团订单不能退款
|
|
Page({
|
|
data: {
|
|
orderId: 0,
|
|
orderInfo: {},
|
|
orderGoods: [],
|
|
handleOption: {},
|
|
textCode: {},
|
|
goodsCount: 0,
|
|
addressId: 0,
|
|
postscript: '',
|
|
hasPay: 0,
|
|
success: 0,
|
|
imageUrl: '',
|
|
wxTimerList: {},
|
|
express:{},
|
|
onPosting:0,
|
|
},
|
|
reOrderAgain: function () {
|
|
let orderId = this.data.orderId
|
|
wx.navigateTo({
|
|
url: '/pages/order-check/index?addtype=2&orderFrom=' + orderId
|
|
})
|
|
},
|
|
copyText: function (e) {
|
|
let data = e.currentTarget.dataset.text;
|
|
wx.setClipboardData({
|
|
data: data,
|
|
success(res) {
|
|
wx.getClipboardData({
|
|
success(res) { }
|
|
})
|
|
}
|
|
})
|
|
},
|
|
toGoodsList: function(e) {
|
|
let orderId = this.data.orderId;
|
|
wx.navigateTo({
|
|
url: '/pages/ucenter/goods-list/index?id=' + orderId,
|
|
});
|
|
},
|
|
toExpressInfo: function(e) {
|
|
let orderId = this.data.orderId;
|
|
wx.navigateTo({
|
|
url: '/pages/ucenter/express-info/index?id=' + orderId,
|
|
});
|
|
},
|
|
toRefundSelect: function(e) {
|
|
wx.navigateTo({
|
|
url: '/pages/refund-select/index',
|
|
});
|
|
},
|
|
payOrder: function(e) {
|
|
let that = this;
|
|
pay.payOrder(parseInt(that.data.orderId)).then(res => {
|
|
// this.setData({
|
|
// status: true
|
|
// });
|
|
that.getOrderDetail();
|
|
}).catch(res => {
|
|
util.showErrorToast('支付失败');
|
|
});
|
|
},
|
|
toSelectAddress: function() {
|
|
let orderId = this.data.orderId;
|
|
|
|
wx.navigateTo({
|
|
url: '/pages/ucenter/address-select/index?id=' + orderId,
|
|
});
|
|
},
|
|
onLoad: function() {
|
|
|
|
},
|
|
onShow: function() {
|
|
var orderId = wx.getStorageSync('orderId');
|
|
try {
|
|
this.setData({
|
|
orderId: orderId
|
|
});
|
|
} catch (e) {
|
|
// Do something when catch error
|
|
}
|
|
wx.showLoading({
|
|
title: '加载中...',
|
|
})
|
|
this.getOrderDetail();
|
|
this.getExpressInfo();
|
|
},
|
|
onUnload: function() {
|
|
let oCancel = this.data.handleOption.cancel;
|
|
if (oCancel == true) {
|
|
let orderTimerID = this.data.wxTimerList.orderTimer.wxIntId;
|
|
clearInterval(orderTimerID);
|
|
}
|
|
},
|
|
orderTimer: function(endTime) {
|
|
let that = this;
|
|
var orderTimerID = '';
|
|
let wxTimer2 = new timer({
|
|
endTime: endTime,
|
|
name: 'orderTimer',
|
|
id: orderTimerID,
|
|
complete: function() {
|
|
that.letOrderCancel();
|
|
},
|
|
})
|
|
wxTimer2.start(that);
|
|
},
|
|
bindinputMemo(event) {
|
|
let postscript = event.detail.value;
|
|
this.setData({
|
|
postscript: postscript
|
|
});
|
|
},
|
|
cancelRefund: function() {
|
|
let that = this;
|
|
wx.showModal({
|
|
title: '',
|
|
content: '确定要取消退款?',
|
|
success: function(res) {
|
|
if (res.confirm) {
|
|
util.request(api.CancelRefund, {
|
|
orderId: that.data.orderId
|
|
}, 'POST').then(function(res) {
|
|
if (res.errno === 0) {
|
|
wx.showToast({
|
|
title: '取消退款成功!'
|
|
});
|
|
that.getOrderDetail();
|
|
} else {
|
|
util.showErrorToast(res.errmsg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
getExpressInfo:function() {
|
|
this.setData({
|
|
onPosting:0
|
|
})
|
|
let that = this;
|
|
util.request(api.OrderExpressInfo, { orderId: that.data.orderId }).then(function (res) {
|
|
if (res.errno === 0) {
|
|
let express = res.data;
|
|
express.traces = JSON.parse(res.data.traces);
|
|
that.setData({
|
|
onPosting: 1,
|
|
express: express
|
|
});
|
|
// var traces = res.data.traces;
|
|
// that.setData({
|
|
// expressList: expressList
|
|
// });
|
|
// if (traces.length == 0) {
|
|
// that.setData({
|
|
// hasExpress: 0
|
|
// });
|
|
// }
|
|
}
|
|
});
|
|
},
|
|
getOrderDetail: function() {
|
|
let that = this;
|
|
util.request(api.OrderDetail, {
|
|
orderId: that.data.orderId
|
|
}).then(function(res) {
|
|
if (res.errno === 0) {
|
|
that.setData({
|
|
orderInfo: res.data.orderInfo,
|
|
orderGoods: res.data.orderGoods,
|
|
handleOption: res.data.handleOption,
|
|
textCode: res.data.textCode,
|
|
goodsCount: res.data.goodsCount
|
|
});
|
|
let orderType = res.data.orderInfo.order_type;
|
|
if (orderType == 2) {
|
|
that.getImageUrl();
|
|
}
|
|
}
|
|
let receive = res.data.textCode.receive;
|
|
if(receive == true){
|
|
let confirm_remainTime = res.data.orderInfo.confirm_remainTime;
|
|
remaintimer.reTime(confirm_remainTime,'c_remainTime',that);
|
|
}
|
|
let oCancel = res.data.handleOption.cancel;
|
|
let payTime = 0;
|
|
if (oCancel == true) {
|
|
payTime = res.data.orderInfo.final_pay_time
|
|
that.orderTimer(payTime);
|
|
}
|
|
});
|
|
wx.hideLoading();
|
|
},
|
|
letOrderCancel: function() {
|
|
let that = this;
|
|
util.request(api.OrderCancel, {
|
|
orderId: that.data.orderId
|
|
}, 'POST').then(function(res) {
|
|
if (res.errno === 0) {
|
|
that.getOrderDetail();
|
|
} else {
|
|
util.showErrorToast(res.errmsg);
|
|
}
|
|
});
|
|
},
|
|
// “删除”点击效果
|
|
deleteOrder: function() {
|
|
let that = this;
|
|
wx.showModal({
|
|
title: '',
|
|
content: '确定要删除此订单?',
|
|
success: function(res) {
|
|
if (res.confirm) {
|
|
util.request(api.OrderDelete, {
|
|
orderId: that.data.orderId
|
|
}, 'POST').then(function(res) {
|
|
if (res.errno === 0) {
|
|
wx.showToast({
|
|
title: '删除订单成功'
|
|
});
|
|
wx.removeStorageSync('orderId');
|
|
wx.navigateBack();
|
|
} else {
|
|
util.showErrorToast(res.errmsg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
|
|
// “确认收货”点击效果
|
|
confirmOrder: function() {
|
|
let that = this;
|
|
wx.showModal({
|
|
title: '',
|
|
content: '收到货了?确认收货?',
|
|
success: function(res) {
|
|
if (res.confirm) {
|
|
util.request(api.OrderConfirm, {
|
|
orderId: that.data.orderId
|
|
}, 'POST').then(function(res) {
|
|
if (res.errno === 0) {
|
|
wx.showToast({
|
|
title: '确认收货成功!'
|
|
});
|
|
that.getOrderDetail();
|
|
} else {
|
|
util.showErrorToast(res.errmsg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
// “取消订单”点击效果
|
|
cancelOrder: function(e) {
|
|
let that = this;
|
|
wx.showModal({
|
|
title: '',
|
|
content: '确定要取消此订单?',
|
|
success: function(res) {
|
|
if (res.confirm) {
|
|
util.request(api.OrderCancel, {
|
|
orderId: that.data.orderId
|
|
}, 'POST').then(function(res) {
|
|
if (res.errno === 0) {
|
|
let orderTimerID = that.data.wxTimerList.orderTimer.wxIntId;
|
|
clearInterval(orderTimerID);
|
|
wx.showToast({
|
|
title: '取消订单成功'
|
|
});
|
|
that.setData({
|
|
orderList: [],
|
|
allOrderList: [],
|
|
allPage: 1,
|
|
allCount: 0,
|
|
size: 8
|
|
});
|
|
that.getOrderDetail();
|
|
} else {
|
|
util.showErrorToast(res.errmsg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
}) |