<template> <view> <dHeader :title="orderExceptionData.orderExceptionType=='order_superfluous_box_exception'?$lang.lang.boxException.exception:$lang.lang.boxException.exceptionless"></dHeader> <view class="start-bar"></view> <view class="order-info"> <view class="order-info-v"> <view class="order-info-line"> <view class="order-info-line-v"> <view class=""><text>{{$lang.lang.boxException.orderNo}}:</text><text>{{orderData.orderNo}}</text></view> <!-- <view class=""><text>{{$lang.lang.boxException.prodZh}}:</text><text>{{shopData.prodTitleZh}}</text></view> --> <!-- <view class=""><text>{{$lang.lang.boxException.prodEn}}:</text><text>{{shopData.prodTitleEn}}</text></view> --> <view> <text>{{$lang.lang.boxException.line}}:</text> <view class="channel"> <text>【{{getConfigLabel('transport',orderData.transportId)}}】</text> <text v-if="orderData.transportId==3||orderData.transportId==4">【{{orderData.channelName}}】</text> <text>从【 {{orderData.logisticsInfoDto?(orderData.logisticsInfoDto[$lang.startTitle]):''}} 】发往【{{orderData.logisticsInfoDto?(orderData.logisticsInfoDto[$lang.destTitle]):''}}】</text> </view> </view> <view class="11"><text>{{$lang.lang.boxException.form}}:{{(orderData.costVO.totalNum||0)+$lang.lang.boxException.box+(orderData.costVO.totalNum||0)+'m³ '+(orderData.costVO.totalWeight||0)+'kg'}}</text> <!-- <text>{{(orderData.costVO?orderData.costVO.totalNum:0)+'箱 '+(orderData.costVO?orderData.costVO.totalVolume:0)+'m³ '+(orderData.costVO?orderData.costVO.totalWeight:0)+'kg'}}</text> --> </view> <view class="22"><text>{{$lang.lang.boxException.in}}:</text><text>{{(orderData.sumNum||0)+$lang.lang.boxException.box+ +(orderData.sumVolume||0)+'m³ '+(orderData.sumWeight||0)+'kg'}}</text></view> <view class=""><text>{{$lang.lang.boxException.describe}}:</text><text>{{$lang.locale=='zh'?orderExceptionData.orderExceptionDescVO.descZh:orderExceptionData.orderExceptionDescVO.descEn}}</text></view> <view class="corder-tab1-item"> <text>{{$lang.lang.boxException.result}}:</text> <picker :class="params.orderExceptionHandlerResult == 0 ? 'v-picker v-picker-2' : 'v-picker'" mode='selector' :value="config.result.index" :range="config.result.label" v-if="config.result.label.length>0" @change="changeResult"> <view class="uni-input">{{config.result.label[config.result.index]}}</view> </picker> <image class="rgt" src="../../static/img/rgt.png" mode=""></image> </view> <view class="corder-tab1-item"> <text>{{$lang.lang.boxException.remark}}</text> <textarea v-model="params.orderExceptionHandlerRemark"></textarea> </view> <view class="apply-btn"> <view @click="sumbit">{{$lang.lang.boxException.sumbit}}</view> <view @click="reset">{{$lang.lang.boxException.reset}}</view> </view> </view> </view> </view> </view> </view> </view> </template> <script> import dHeader from '../../components/dHeader/index.vue' export default { components: { dHeader }, data() { return { orderData:{}, shopData:{}, orderExceptionData:{}, config:{ transport:{ label:[], value:[] }, result:{ index:0, label:[], value:[] }, }, params:{ orderExceptionHandlerResult:'', orderExceptionHandlerRemark:'' } } }, onLoad(op) { this.orderConfig('transport_type', 'transport') if(op.id){ this.getExceptionData(op.id,op.orderId) } }, methods: { getExceptionData(id,orderId){ let that = this that.$request.get('/app-api/ecw/order-exception/getExceptionById',{id:id}).then(res => { if(res.code==0&&res.data){ that.orderExceptionData = res.data that.getOrderData(orderId) that.orderConfig(that.orderExceptionData.orderExceptionType+'_result','result') } }) }, getOrderData(id){ let that = this that.$request.get('/app-api/my/order/info/'+id).then(res => { if(res.code==0&&res.data){ that.orderData = res.data // that.orderData.orderItemVOList.forEach((item)=>{ // if(item.orderItemId == that.orderExceptionData.orderItemId){ // that.shopData = item // } // }) } }) }, reset(){ this.params.orderExceptionHandlerRemark="" this.params.orderExceptionHandlerResult="" }, getConfigLabel(key,value){ var indexs = '' this.config[key].value.forEach(function(item,index){ if(item == value){ indexs = index } }) return this.config[key].label[indexs] }, orderConfig (field, key) { let that = this that.$request.getConfig(field).then(res => { if(res.code==0&&res.data&&res.data.list.length > 0){ var d = res.data.list for(var i in d){ if(that.$lang.locale=='zh'){ that.config[key].label.push(d[i].label) }else{ that.config[key].label.push(d[i].labelEn) } that.config[key].value.push(d[i].value) } } }) }, changeResult(e){ this.config.result.index = e.detail.value this.params.orderExceptionHandlerResult = this.config.result.value[e.detail.value] }, sumbit(){ let that = this that.params.orderExceptionId = that.orderExceptionData.id that.params.orderExceptionStatus = that.orderExceptionData.orderExceptionStatus if(!that.params.orderExceptionHandlerResult){ that.params.orderExceptionHandlerResult = that.config.result.value[0] } that.params.source = 'mobile' that.$request.post('/app-api/ecw/order-exception/handlerExceptionByExceptionId',that.params).then(res => { if(res.code==0){ uni.showToast({ title:this.$lang.lang.notices.operation, icon:'none' }) setTimeout(()=>{ uni.reLaunch({ url:'../exception/exception?id='+that.orderData.orderId }) },2000) }else{ uni.showToast({ title:res.msg, icon:'none' }) } }) } } } </script> <style> @import url("../../static/css/box_exception.css"); </style>