import orderApi from '../../api/order'; import userApi from '../../api/user'; import {hidePhoneNumber} from '../../utils/util'; Page({ orderId:'', /** * 页面的初始数据 */ data: { orderDetail:{}, refreshTrigger:false, orderStatus:orderApi.status, orderStatusKV:orderApi.statusKV, deliverStatusKV:orderApi.deliverStatusKV, genderKV:userApi.genderKV, orderStep:0 }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { this.orderId = options.id; this.getOrderDetail(); }, getOrderDetail(){ orderApi.detail(this.orderId).then((data)=>{ let orderStep = 0; if(data.status==this.data.orderStatus.received){ orderStep = 1; }else if(data.status==this.data.orderStatus.delivering){ orderStep = 2; }else if(data.status==this.data.orderStatus.unpaid||data.status==this.data.orderStatus.completed){ orderStep = 3; } data.complete_time = this.formatTime(data.complete_time); data.pickup_time = this.formatTime(data.pickup_time); data.received_time = this.formatTime(data.received_time); const receivedStatusCode = wx.getStorageSync(data.orderid); data.packages.map((item)=>{ if(receivedStatusCode){ if(item.pickup_codes.length==(receivedStatusCode[item.id]||[]).length){ item.receivedAll = true; } (receivedStatusCode[item.id]||[]).map((code)=>{ item[code] = true; }) } }); if(data.status==this.data.orderStatus.created||data.status==this.data.orderStatus.completed||data.status==this.data.orderStatus.unpaid){ data.address_phone = hidePhoneNumber(data.address_phone); } this.setData({ orderDetail:data, refreshTrigger:false, orderStep }) }).catch((res)=>{ console.log(res); this.setData({ refreshTrigger:false }) }) }, copyOrderId(){ wx.setClipboardData({ data: this.data.orderDetail.orderid, }) }, formatTime(time){ return (time||'').substr(5,11); }, preview(event){ const current = event.currentTarget.dataset.url; wx.previewImage({ current:current, urls: this.data.orderDetail.complete_images, }) }, previewPackageImage(event){ const current = event.currentTarget.dataset.item; wx.previewImage({ current:current, urls: this.data.orderDetail.pickup_images, }) }, selectPackageCode(event){ const index = event.currentTarget.dataset.index; const item = this.data.orderDetail.packages[index]; let receviedStatus = wx.getStorageSync(item.orderid)||{}; const checkedCode = event.detail.value; item.pickup_codes.map((code)=>{ item[code] = !!checkedCode.find((c)=>c==code); }) let receivedAll = item.pickup_codes.length==checkedCode.length; item.receivedAll = receivedAll this.setData({ [`orderDetail.packages[${index}]`]:item }); receviedStatus[item.id] = checkedCode; wx.setStorage({ key:item.orderid, data:receviedStatus }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })