diff --git a/pages/agent/detail/index.js b/pages/agent/detail/index.js index bdde327..fcb1246 100644 --- a/pages/agent/detail/index.js +++ b/pages/agent/detail/index.js @@ -1,5 +1,10 @@ // pages/agent/detail/index.js -import { getProxyOrderInfo, cancelProxyOrder, cancelReservation, cancelProxyOrderItem } from "../../api/ztb" +import { + getProxyOrderInfo, + cancelProxyOrder, + cancelReservation, + cancelProxyOrderItem +} from "../../api/ztb" const util = require('../../../utils/util') const math = require('../../../utils/math') const event = require('../../../utils/event') @@ -14,6 +19,7 @@ Page({ id: null, cancel: true, orderInfo: null, + orderInfoStep: null, }, /** * 生命周期函数--监听页面加载 @@ -24,33 +30,62 @@ Page({ this.fetchOrderInfo() } }, - fetchOrderInfo: function(){ - wx.showLoading({ title: '加载中', mask: true }) + fetchOrderInfo: function () { + wx.showLoading({ + title: '加载中', + mask: true + }) getProxyOrderInfo(this.data.id).then(result => { this.data.cancel = true for (let index = 0; index < result.data.orderItems.length; index++) { const element = result.data.orderItems[index] - if(element.weightnoteInfo && element.weightnoteInfo.id){ + if (element.weightnoteInfo && element.weightnoteInfo.id) { // 全额 - if(util.isEmpty(element.activityOrderAuditPassNum)){ + if (util.isEmpty(element.activityOrderAuditPassNum)) { element.sumAmount = math.times(element.weightnoteInfo.settleUtiPrice, element.weightnoteInfo.settleWeight) - if(element.surcharge == math.times(element.weightnoteInfo.netWeight, element.unitSurcharge)){ + if (element.surcharge == math.times(element.weightnoteInfo.netWeight, element.unitSurcharge)) { element.orderType = 0 } else { element.orderType = 1 } } else { - if(element.weightnoteInfo.netWeight){ + if (element.weightnoteInfo.netWeight) { element.proxyAmount = math.times(element.weightnoteInfo.netWeight, element.unitSurcharge) } } this.data.cancel = false } - if(element.activityOrderAuditPassNum == 2){ + if (element.activityOrderAuditPassNum == 2) { element.finalSettlePrice = math.plus(element.finalPayMoney, element.preSettleMoney) } } - this.setData({orderInfo: result.data, safeBottom: app.globalData.safeBottom, cancel: this.data.cancel }) + this.setData({ + orderInfo: result.data, + safeBottom: app.globalData.safeBottom, + cancel: this.data.cancel + }) + var orderInfoStepLs = result.data.orderItems + result.data.orderItems.forEach((element1, index1) => { + var dataLength=0; + for (let i = 0; i < 5; i++) { + if (element1.orderItemTimeList[i]) {//有数据 + dataLength=i; + orderInfoStepLs[index1].orderItemTimeList[i] = element1.orderItemTimeList[i] + orderInfoStepLs[index1].orderItemTimeList[i].rank= i + } else { + orderInfoStepLs[index1].orderItemTimeList[i] = { + description: this.getStr(i), + time: "", + rank: i + } + } + } + orderInfoStepLs[index1].datalength=dataLength; + }); + console.log('hhhh', orderInfoStepLs) + this.setData({ + orderInfoStep: orderInfoStepLs + }) wx.hideLoading() }).catch(err => { wx.hideLoading() @@ -58,6 +93,20 @@ Page({ console.log(err) }) }, + getStr: function (index) { + switch (index) { + case 0: + return "订单已提交,待预约"; + case 1: + return "预约成功,待送货"; + case 2: + return "已收货,待审核"; + case 3: + return "已审核,结算中"; + case 4: + return "已结算,订单完成"; + } + }, cancelOrder: function () { this.wuxDialog = this.wuxDialog || this.selectComponent('#wux-dialog') var that = this @@ -71,12 +120,20 @@ Page({ text: '确定', type: 'primary', onTap(e) { - wx.showLoading({ title: '处理中', mask: true }) + wx.showLoading({ + title: '处理中', + mask: true + }) cancelProxyOrder(that.data.orderInfo.orderId).then(result => { //成功回调 wx.hideLoading() - that.setData({ ['orderInfo.status']: 55 }) - event.emit('ProxyMessage', { what: 400, desc: 'ProxyChange' }) + that.setData({ + ['orderInfo.status']: 55 + }) + event.emit('ProxyMessage', { + what: 400, + desc: 'ProxyChange' + }) util.showToast('订单已经取消') }).catch(err => { //异常回调 @@ -87,7 +144,7 @@ Page({ }] }) }, - refuseOrder: function(){ + refuseOrder: function () { this.wuxDialog = this.wuxDialog || this.selectComponent('#wux-dialog') var that = this this.wuxDialog.open({ @@ -100,11 +157,19 @@ Page({ text: '确定', type: 'primary', onTap(e) { - wx.showLoading({ title: '处理中', mask: true }) + wx.showLoading({ + title: '处理中', + mask: true + }) cancelReservation(that.data.orderInfo.orderId).then(result => { wx.hideLoading() - that.setData({ ['orderInfo.status']: 50 }) - event.emit('ProxyMessage', { what: 400, desc: 'ProxyChange' }) + that.setData({ + ['orderInfo.status']: 50 + }) + event.emit('ProxyMessage', { + what: 400, + desc: 'ProxyChange' + }) util.showToast('订单预约已经取消') }).catch(err => { wx.hideLoading() @@ -114,7 +179,7 @@ Page({ }] }) }, - cancelOrderItem: function(event){ + cancelOrderItem: function (event) { var orderItem = this.data.orderInfo.orderItems[event.currentTarget.dataset.index] this.wuxDialog = this.wuxDialog || this.selectComponent('#wux-dialog') var that = this @@ -128,7 +193,10 @@ Page({ text: '确定', type: 'primary', onTap(e) { - wx.showLoading({ title: '处理中', mask: true }) + wx.showLoading({ + title: '处理中', + mask: true + }) cancelProxyOrderItem(orderItem.id).then(result => { wx.hideLoading() // 如果全部都关闭了,那么订单也就关闭了 @@ -142,10 +210,12 @@ Page({ }] }) }, - editOrder: function(){ - wx.navigateTo({ url: '/pages/agent/edit/index?orderId=' + this.data.orderInfo.orderId }) + editOrder: function () { + wx.navigateTo({ + url: '/pages/agent/edit/index?orderId=' + this.data.orderInfo.orderId + }) }, - clipboard: function(){ + clipboard: function () { wx.setClipboardData({ data: this.data.orderInfo.millDeliveryOrderId, success: function (res) { diff --git a/pages/agent/detail/index.wxml b/pages/agent/detail/index.wxml index c65cfb1..d65abf5 100644 --- a/pages/agent/detail/index.wxml +++ b/pages/agent/detail/index.wxml @@ -14,7 +14,7 @@ 车辆信息({{orderInfo.orderItems.length}}辆车) - + 取消订单 - function statusStep(step, size, status) { - if(status == 54 || status == 55){ - return 'finish' - } - if(size == 1){ - return 'wait' - } else if(size == 2){ - if(step == 0){ - return 'process' - } else { - return 'wait' - } - } else { - if(step == size - 2){ - return 'process' - } else if(step == size - 1){ - return 'wait' - } else { - return 'finish' - } - } + function statusStep(step, size, datalength) { + console.log("step=",step); + console.log("size=",size); + console.log("datalength=",datalength); + return step \ No newline at end of file