487 lines
14 KiB
Vue
487 lines
14 KiB
Vue
<template>
|
||
<tpx-page>
|
||
<view class="dt-block" style="margin-top: 0;">
|
||
|
||
<!-- <tpx-text-dic :value="modelInfo.waybillStatus" :list="dicData.emis_waybill_status" ></tpx-text-dic> -->
|
||
<!-- <view class="dt-tle">
|
||
<view class="t1">订单号: {{modelInfo.orderSn}}</view>
|
||
<view class="t2">
|
||
<view class="clr-prm">
|
||
<tpx-text-dic :value="modelInfo.orderStatus" :list="dicData.emis_order_status" ></tpx-text-dic>
|
||
</view>
|
||
</view>
|
||
</view> -->
|
||
<view class="dt-tle">
|
||
<view class="t1">
|
||
<u-row @click="setClipboardData(modelInfo.billCode)">
|
||
运单号: {{modelInfo.billCode}}
|
||
<view class="pl-10">
|
||
<u-icon name="file-text" size="32" custom-style=""></u-icon>
|
||
</view>
|
||
</u-row>
|
||
</view>
|
||
<view class="t2">
|
||
<view class="clr-prm">
|
||
<tpx-text-dic :value="modelInfo.waybillStatus" :list="dicData.emis_waybill_status" ></tpx-text-dic>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view>
|
||
<bpe-addressjiami-tmp v-model:value="modelInfo"></bpe-addressjiami-tmp>
|
||
</view>
|
||
|
||
</view>
|
||
|
||
<view v-if="modelInfo.blIsQuestion == '1'" class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1 clr-prm">问题件</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="blcok-grey-sm">
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">问题类型</text>
|
||
<text class="clr-prm">{{modelInfo.problemTypeName || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">问题原因</text>
|
||
<text class="clr-prm">{{modelInfo.problemCause || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">托寄货物描述</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="">
|
||
<bpe-goodstatic-tmp v-model:value="modelInfo"></bpe-goodstatic-tmp>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
|
||
<u-row justify="end">
|
||
<view style="display: inline-block;white-space: nowrap;" class="mt-10">
|
||
<u-row>
|
||
<u-button v-if="modelInfo.pickupMethod == 1 && modelInfo.intoWarehouseBillCode"
|
||
@click="goto(`warehousing/detail?inNo=${modelInfo.intoWarehouseBillCode}`)" shape="circle" type="primary"
|
||
custom-style="height: 54rpx;margin-left: 20rpx;">入仓单</u-button>
|
||
<u-button shape="circle" type="primary" :plain="true"
|
||
custom-style="height: 54rpx;margin-left: 20rpx;">单证</u-button>
|
||
</u-row>
|
||
</view>
|
||
</u-row>
|
||
</view>
|
||
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">产品类型</view>
|
||
<view class="t2">
|
||
<view class="clr-prm">
|
||
<tpx-text-dic :value="modelInfo.paymentStatus" :list="dicData.emis_payment_status" ></tpx-text-dic>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="blcok-grey-sm">
|
||
<view class="dt-item">
|
||
<view v-if="modelInfo.reciever">
|
||
<text class="clr-sub pr-10">寄件网点</text>
|
||
<text class="">{{ modelInfo.sendSiteName }}</text>
|
||
</view>
|
||
<view>
|
||
<text class="clr-sub pr-10">目的网点</text>
|
||
<text class="">{{ modelInfo.dispatchUnderlingSiteName }}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<view>
|
||
<text class="clr-sub pr-10">始发网点</text>
|
||
<text class="">{{ modelInfo.startSiteName }}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<view>
|
||
<text class="clr-sub pr-10">目的地</text>
|
||
<text class="">{{ modelInfo.destinationName }}</text>
|
||
</view>
|
||
<view v-if="modelInfo.reciever">
|
||
<text class="clr-sub pr-10">目的国家</text>
|
||
<text class="">{{ modelInfo.reciever.countryName }}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<view>
|
||
<text class="clr-sub pr-10">线路</text>
|
||
<text class="">{{ modelInfo.transLineTypeName }}</text>
|
||
</view>
|
||
<view>
|
||
<text class="clr-sub pr-10">产品类型</text>
|
||
<text class="">{{ modelInfo.productTypeName }}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
|
||
<view>
|
||
<text class="clr-sub pr-10">时效</text>
|
||
<text class="">{{modelInfo.timeType}}</text>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">报关方式</text>
|
||
<view class="">
|
||
<tpx-text-dic :value="modelInfo.customsEclaration" :list="dicData.emis_declare_mode" ></tpx-text-dic>
|
||
</view>
|
||
</u-row>
|
||
<u-row>
|
||
<text class="clr-sub pr-10">清关方式</text>
|
||
<view class="">
|
||
<tpx-text-dic :value="modelInfo.customsClear" :list="dicData.emis_customs_clear" ></tpx-text-dic>
|
||
</view>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item" v-if="modelInfo.blVirtual && modelInfo.blVirtual === '1'">
|
||
<view>
|
||
<text class="clr-sub pr-10">是否为虚拟单</text>
|
||
<text class="">{{ modelInfo.blVirtual==='1'?'是':'否' }}</text>
|
||
</view>
|
||
<view>
|
||
<text class="clr-sub pr-10">关联主单</text>
|
||
<text class="">{{ modelInfo.masterBillCode }}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">寄件时间</text>
|
||
<text>{{modelInfo.sendDate || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">预计到达时间</text>
|
||
<text>{{modelInfo.estimateDate || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">费用明细</view>
|
||
<view class="t2"></view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="">
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">付款方式</text>
|
||
<view class="">
|
||
<tpx-text-dic :value="modelInfo.paymentType" :list="dicData.emis_payment_type" ></tpx-text-dic>
|
||
</view>
|
||
</u-row>
|
||
</view>
|
||
<view v-if="isShowYueJie">
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">月结客户</text>
|
||
<text class="">{{modelInfo.custName}}</text>
|
||
</u-row>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">回款联系人</text>
|
||
<text class="">{{modelInfo.payee || '-'}}</text>
|
||
</u-row>
|
||
<u-row>
|
||
<text class="clr-sub pr-10">销售联系人</text>
|
||
<text class="">{{modelInfo.salesmen || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
|
||
<bpe-coststatic-tmp v-model:value="modelInfo"></bpe-coststatic-tmp>
|
||
</view>
|
||
</view>
|
||
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">取件、派件信息</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="blcok-grey-sm">
|
||
<view class="mb-10 font-weight">取件信息</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">取货方式</text>
|
||
<view class="">
|
||
<tpx-text-dic :value="modelInfo.pickupMethod" :list="dicData.emis_qujian_fangshi" ></tpx-text-dic>
|
||
</view>
|
||
</u-row>
|
||
</view>
|
||
<view v-if="modelInfo.pickupMethod == 2" class="dt-item">
|
||
<view>
|
||
<text class="clr-sub pr-10">预约上门</text>
|
||
<text class=""> {{modelInfo.pickStartDate || '-'}}</text>
|
||
</view>
|
||
</view>
|
||
<view class="dt-item">
|
||
<view>
|
||
<text class="clr-sub pr-10">安排信息</text>
|
||
<text >
|
||
<text v-if="modelInfo.pickupMethod == 1">{{modelInfo.operateEmployeeName}}</text>
|
||
<text v-if="modelInfo.pickupMethod == 2">{{modelInfo.takePieceEmployeeName}}</text>
|
||
</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="blcok-grey-sm">
|
||
<view class="mb-10 font-weight">派件信息</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">派送方式</text>
|
||
<view class="">
|
||
<tpx-text-dic :value="modelInfo.dispatchMethod" :list="dicData.emis_tab_dispatch_mode" ></tpx-text-dic>
|
||
</view>
|
||
</u-row>
|
||
<u-row>
|
||
<text class="clr-sub pr-10">派件员</text>
|
||
<text>{{modelInfo.dispatchManName || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">派送网点</text>
|
||
<text>{{modelInfo.dispatchSiteName || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">派送时间</text>
|
||
<text>{{modelInfo.dispatchDate || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="blcok-grey-sm">
|
||
<view class="mb-10 font-weight">签收信息</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">签收人</text>
|
||
<text>{{modelInfo.signMan || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">签收站点</text>
|
||
<text>{{modelInfo.signSiteName || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
<view class="dt-item">
|
||
<u-row>
|
||
<text class="clr-sub pr-10">签收时间</text>
|
||
<text>{{modelInfo.signDate || '-'}}</text>
|
||
</u-row>
|
||
</view>
|
||
</view>
|
||
|
||
<!-- <u-line margin="20rpx 0 10rpx 0"></u-line>
|
||
<u-row justify="between">
|
||
<u-text text="快递员" size="28" :bold="true"></u-text>
|
||
<u-row>
|
||
<u-text :text="modelInfo.takePieceEmployeeName" size="28" :bold="true" margin="0 30rpx 0 0"></u-text>
|
||
<view>
|
||
<u-avatar size="50" :src="''"></u-avatar>
|
||
</view>
|
||
</u-row>
|
||
</u-row> -->
|
||
</view>
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">运单备注</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="blcok-grey-sm">
|
||
<view class="dt-item">{{remarkFormat(modelInfo) || '-'}}</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">底单图片</view>
|
||
<view class="t2"></view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="blcok-grey-sm" style="margin-top: 0;">
|
||
<bpd-pic-preview-tmp label="货物图片" :list="modelInfo.billPicGoodsRmk" ></bpd-pic-preview-tmp>
|
||
</view>
|
||
<view class="blcok-grey-sm mt-20">
|
||
<bpd-pic-preview-tmp label="揽收底单图片" :list="modelInfo.billPicSendRmk" ></bpd-pic-preview-tmp>
|
||
</view>
|
||
<!-- <view class="blcok-grey-sm mt-20">
|
||
<bpd-pic-preview-tmp label="收件进仓单图片TODO" :list="modelInfo.TODO" ></bpd-pic-preview-tmp>
|
||
</view> -->
|
||
<view class="blcok-grey-sm mt-20">
|
||
<bpd-pic-preview-tmp label="签收货物图片" :list="modelInfo.billPicDispatchRmk" ></bpd-pic-preview-tmp>
|
||
</view>
|
||
<!-- <view class="blcok-grey-sm mt-20">
|
||
<bpd-pic-preview-tmp label="签收签名图片TODO" :list="modelInfo.TODO" ></bpd-pic-preview-tmp>
|
||
</view> -->
|
||
</view>
|
||
|
||
<view class="dt-block">
|
||
<view class="dt-tle">
|
||
<view class="t1">物流动态</view>
|
||
<view class="t2">
|
||
<u-button @click="goto(`post/locus?billCode=${billCode}`)" shape="circle" :plain="true" custom-style="height: 50rpx;font-size:28rpx;">查看轨迹</u-button>
|
||
</view>
|
||
</view>
|
||
<u-line margin="20rpx 0 20rpx"></u-line>
|
||
<view class="mb-20">
|
||
<buns-locus-pos :billCode="billCode"></buns-locus-pos>
|
||
</view>
|
||
</view>
|
||
|
||
|
||
<view style="height: 30rpx;"></view>
|
||
</tpx-page>
|
||
|
||
</template>
|
||
|
||
<script>
|
||
|
||
import BpeAddressjiamiTmp from "@/components/buns-post-edit-templates/bpe-addressjiami-tmp"
|
||
import BpdPicPreviewTmp from "@/components/buns-post-detail-templates/bpd-pic-preview-tmp"
|
||
import BpeGoodstaticTmp from "@/components/buns-post-edit-templates/bpe-goodstatic-tmp"
|
||
import BpeCoststaticTmp from "@/components/buns-post-edit-templates/bpe-coststatic-tmp"
|
||
|
||
import * as apiService from "@/common/api"
|
||
|
||
export default {
|
||
components: { BpeAddressjiamiTmp, BpdPicPreviewTmp, BpeGoodstaticTmp, BpeCoststaticTmp },
|
||
computed: {
|
||
dicData() {
|
||
return this.$store.getters.dicData
|
||
},
|
||
modelInfo: {
|
||
get(){
|
||
return this.value
|
||
}
|
||
},
|
||
isShowYueJie(){
|
||
let { modelInfo } = this
|
||
return modelInfo.paymentType == 2 || modelInfo.paymentType == 4 || modelInfo.paymentType == 5
|
||
},
|
||
},
|
||
props: {
|
||
value: {
|
||
default () {
|
||
return { }
|
||
}
|
||
},
|
||
billCode: {
|
||
default () {
|
||
return ''
|
||
}
|
||
}
|
||
},
|
||
data() {
|
||
return {
|
||
}
|
||
},
|
||
created() {
|
||
|
||
},
|
||
mounted(){
|
||
this.initData()
|
||
},
|
||
onHide() {
|
||
|
||
},
|
||
unmounted() {
|
||
|
||
},
|
||
methods: {
|
||
//拼接虚拟单后6位
|
||
conCatVirtualRemark(virtualRemark) {
|
||
if (virtualRemark != null) {
|
||
return virtualRemark.split(',').map((item) => {
|
||
return item.substring(item.length - 6);
|
||
}).join(',');
|
||
}
|
||
},
|
||
//拼接备注
|
||
remarkFormat(modelInfo) {
|
||
let remark = modelInfo.remark;
|
||
if (modelInfo.blVirtual === '0' && modelInfo.virtualRemark !== '' && modelInfo.virtualRemark !== null && modelInfo.transLine === '002' && modelInfo.sendDate > '2025-06-23 20:00:00') {
|
||
if (remark && remark.trim() !== '' && !remark.endsWith(',')) {
|
||
remark = remark + ','
|
||
}
|
||
remark = `${remark}该运单为主单,对应虚拟单为${this.conCatVirtualRemark(modelInfo.virtualRemark)}`;
|
||
}
|
||
return remark;
|
||
},
|
||
async initData(){
|
||
if(this.billCode) {
|
||
let res = await apiService.getOrderDetail({billCode: this.billCode, _loading: true})
|
||
// 通过对象合并才能修改父级 数据
|
||
Object.assign(this.modelInfo, res.data || {})
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss">
|
||
@import '@/common/uni-nvue.scss';
|
||
|
||
</style>
|
||
<style scoped lang="scss">
|
||
.dt-block {
|
||
margin-top: 30rpx;
|
||
padding: 30rpx;
|
||
background-color: #FFF;
|
||
position: relative;
|
||
}
|
||
.dt-tle {
|
||
display: flex;
|
||
flex-direction: row;
|
||
justify-content: space-between;
|
||
.t1 {
|
||
font-size: 30rpx;
|
||
font-weight: 700;
|
||
}
|
||
.t2{
|
||
font-size: 30rpx;
|
||
}
|
||
}
|
||
.dt-item {
|
||
display: flex;
|
||
flex-direction: row;
|
||
margin-bottom: 20rpx;
|
||
justify-content: space-between;
|
||
}
|
||
|
||
.yditem{
|
||
padding: 20rpx 20rpx;
|
||
background-color: #F6F6F6;
|
||
border-radius: 10rpx;
|
||
margin-bottom: 20rpx;
|
||
}
|
||
.ydi-lab{
|
||
display: flex;
|
||
flex-direction: row;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
}
|
||
|
||
</style> |