|
|
|
@ -22,9 +22,32 @@
|
|
|
|
|
<el-input v-model="endFrom.orderCode" placeholder="请输入订单自自编号" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="包条码"> |
|
|
|
|
<!-- <el-form-item label="包条码"> |
|
|
|
|
<el-input v-model="endFrom.orderPackageCode" placeholder="请输入包条码" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form-item> --> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- <div class="selector"> --> |
|
|
|
|
<div class="el-form-item"> |
|
|
|
|
<span class="el-form-item__label">运损节点</span> |
|
|
|
|
<el-select |
|
|
|
|
v-model="endFrom.transportloss" |
|
|
|
|
filterable |
|
|
|
|
default-first-option |
|
|
|
|
:reserve-keyword="false" |
|
|
|
|
placeholder="运损发现节点" |
|
|
|
|
@change="TransportChange" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in TransportlossList" |
|
|
|
|
:key="item.value" |
|
|
|
|
:label="item.label" |
|
|
|
|
:value="item.value" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</div> |
|
|
|
|
<!-- </div> --> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="品类"> |
|
|
|
|
<el-input v-model="endFrom.name" placeholder="请输入品类" /> |
|
|
|
@ -98,26 +121,7 @@
|
|
|
|
|
</el-form-item> |
|
|
|
|
</div> --> |
|
|
|
|
|
|
|
|
|
<div class="selector"> |
|
|
|
|
<div class="el-form-item"> |
|
|
|
|
<span class="el-form-item__label">运损节点</span> |
|
|
|
|
<el-select |
|
|
|
|
v-model="endFrom.transportloss" |
|
|
|
|
filterable |
|
|
|
|
default-first-option |
|
|
|
|
:reserve-keyword="false" |
|
|
|
|
placeholder="运损发现节点" |
|
|
|
|
@change="TransportChange" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in TransportlossList" |
|
|
|
|
:key="item.value" |
|
|
|
|
:label="item.label" |
|
|
|
|
:value="item.value" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
<!-- <div class="selector"> |
|
|
|
|
<div class="el-form-item selector"> |
|
|
|
@ -140,6 +144,48 @@
|
|
|
|
|
</div> |
|
|
|
|
</div> --> |
|
|
|
|
|
|
|
|
|
<el-tabs type="border-card" class="PackageInformation"> |
|
|
|
|
<el-tab-pane label="包件信息"> |
|
|
|
|
<div class="ResponsibilityBoxS"> |
|
|
|
|
<div><el-button type="primary" @click="AddPackage"> 添加信息 </el-button></div> |
|
|
|
|
<div class="el_btbox" v-for="(item, index) in PackageInfo" :key="index"> |
|
|
|
|
<div class="leftbox"> |
|
|
|
|
<div class="maxBox"> |
|
|
|
|
<span class="title">包条码:</span> |
|
|
|
|
<el-input |
|
|
|
|
v-model="item.packageCode" |
|
|
|
|
placeholder="请输入包条码" |
|
|
|
|
clearable |
|
|
|
|
:rows="2" |
|
|
|
|
@change="ChangePackageInfo(item.packageCode, index)" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="maxBox"> |
|
|
|
|
<span class="title">订单自编码:</span> |
|
|
|
|
<el-input v-model="item.orderCode" placeholder="请输入订单自编号" clearable /> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="maxBox"> |
|
|
|
|
<span class="title">运单号:</span> |
|
|
|
|
<el-input v-model="item.waybillNumber" placeholder="请输入运单号" clearable /> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="el-btn"> |
|
|
|
|
<el-button v-if="item.state" type="primary" @click="historicalPackages(index)"> |
|
|
|
|
查看历史包件 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button type="primary" @click="PackagRemoval(index)"> 移除 </el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="NumTotal"> |
|
|
|
|
<span>总件数:{{ endFrom.number }}</span> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-tab-pane> |
|
|
|
|
</el-tabs> |
|
|
|
|
|
|
|
|
|
<el-tabs type="border-card" style="width: 100%"> |
|
|
|
|
<el-tab-pane label="责任方选择"> |
|
|
|
|
<div class="ResponsibilityBox"> |
|
|
|
@ -614,6 +660,30 @@
|
|
|
|
|
</span> |
|
|
|
|
</template> |
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-dialog v-model="dialogHistoricalPackage" title="查看历史包件" width="30%"> |
|
|
|
|
<el-form-item label="历史包件选择"> |
|
|
|
|
<el-select v-model="HistoricalPackageinput" clearable filterable placeholder="请选择包件"> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in HistoricalPackageList" |
|
|
|
|
:key="item.value" |
|
|
|
|
:label="item.workOrderNumber" |
|
|
|
|
:value="item.workOrderId" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
<el-button @click="ViewPackageDetails(HistoricalPackageinput)">查看详情</el-button> |
|
|
|
|
</el-form-item> |
|
|
|
|
<template #footer> |
|
|
|
|
<span class="dialog-footer"> |
|
|
|
|
<el-button @click="dialogHistoricalPackage = false">取消</el-button> |
|
|
|
|
<el-button type="primary" @click="HistoricalPackage(HistoricalPackageinput)"> |
|
|
|
|
确定选择 |
|
|
|
|
</el-button> |
|
|
|
|
</span> |
|
|
|
|
</template> |
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
</el-card> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
@ -630,6 +700,7 @@ import {
|
|
|
|
|
$_savaSurveyRecord, |
|
|
|
|
$_addProcessingResults, |
|
|
|
|
$_getSurveyRecord, |
|
|
|
|
$_getAbnormalPackage, |
|
|
|
|
} from '@/api/aftersales/aftersalesWorkOrder'; |
|
|
|
|
import { columnList, recordList } from '@/option/aftersales/vueTvemp.js'; |
|
|
|
|
import { getToken } from '@/utils/auth'; |
|
|
|
@ -656,6 +727,13 @@ const Msgtextarea = ref(''); //回复框消息
|
|
|
|
|
const msgState = ref(0); //回复消息状态 |
|
|
|
|
const Msgloading = ref(false); //消息回复的加载效果 |
|
|
|
|
const companyProportion = ref(0); //公司占比 |
|
|
|
|
const HistoricalPackageList = ref([]); //历史包件数组 |
|
|
|
|
const dialogHistoricalPackage=ref(false);//包件弹窗 |
|
|
|
|
const HistoricalPackageinput=ref('');//历史包件选择 |
|
|
|
|
const PackageInfo = ref([ |
|
|
|
|
//包件信息 |
|
|
|
|
{ packageCode: '', orderCode: '', waybillNumber: '' }, |
|
|
|
|
]); |
|
|
|
|
// 提货责任方 |
|
|
|
|
const responsible = ref([ |
|
|
|
|
{ |
|
|
|
@ -1184,6 +1262,47 @@ const amountMoney = () => {
|
|
|
|
|
console.log('收款总计金额', TotalamountReceived.value); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// 添加包件 |
|
|
|
|
const AddPackage = () => { |
|
|
|
|
PackageInfo.value.push({ packageCode: '', orderCode: '', waybillNumber: '' }); |
|
|
|
|
}; |
|
|
|
|
// 包件移除 |
|
|
|
|
const PackagRemoval = val => { |
|
|
|
|
PackageInfo.value.splice(val, 1); //移除当前点击的按钮 |
|
|
|
|
}; |
|
|
|
|
// 查看历史包件 |
|
|
|
|
const historicalPackages = val => { |
|
|
|
|
dialogHistoricalPackage.value = true; //打开历史包件弹窗 |
|
|
|
|
HistorIndex.value = val; |
|
|
|
|
console.log(val); |
|
|
|
|
}; |
|
|
|
|
// 查询包件信息自动回显 |
|
|
|
|
const ChangePackageInfo = (val, index) => { |
|
|
|
|
let data = { |
|
|
|
|
packageCode: val, |
|
|
|
|
}; |
|
|
|
|
$_getAbnormalPackage(data).then(res => { |
|
|
|
|
console.log(res, '包件信息'); |
|
|
|
|
console.log(res.data.data, '包件信息'); |
|
|
|
|
|
|
|
|
|
const packageData = res.data.data[0]; |
|
|
|
|
PackageInfo.value[index].orderCode = packageData.orderCode; //订单自编码 |
|
|
|
|
PackageInfo.value[index].waybillNumber = packageData.waybillNumber; //运单号 |
|
|
|
|
PackageInfo.value[index].orderId = packageData.orderId; //运单号 |
|
|
|
|
PackageInfo.value[index].state = false; //状态 |
|
|
|
|
|
|
|
|
|
if (res.data.data.length > 1) { |
|
|
|
|
HistoricalPackageList.value = res.data.data; |
|
|
|
|
PackageInfo.value[index].state = true; //状态 |
|
|
|
|
} |
|
|
|
|
// packageCode; //包件码 |
|
|
|
|
// //订单自编码 |
|
|
|
|
// orderCode: orderId; //运单号 |
|
|
|
|
// workOrderId; //工单id |
|
|
|
|
// workOrderNumber; //工单名称 |
|
|
|
|
console.log(PackageInfo.value, '处理好的参数'); |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
|
// 新视频预览 |
|
|
|
|
const AddVideoPreview = val => { |
|
|
|
|
VideoPreviewStatus.value = true; //开启视频查看弹窗 |
|
|
|
@ -1448,6 +1567,29 @@ const replyMessage = () => {
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// 历史包件里面的查看 |
|
|
|
|
const ViewPackageDetails = val => { |
|
|
|
|
if(!val){ |
|
|
|
|
ElMessage({ |
|
|
|
|
message: '请选择要查看的数据', |
|
|
|
|
type: 'warning', |
|
|
|
|
}) |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
console.log(val); |
|
|
|
|
let info = HistoricalPackageList.value.find(obj => obj.workOrderId == val); |
|
|
|
|
console.log(info,'筛选的值'); |
|
|
|
|
$router.push({ |
|
|
|
|
path: '/aftersales/aftersalesWorkOrderInfo', |
|
|
|
|
query: { |
|
|
|
|
id: info.workOrderId, |
|
|
|
|
name: info.workOrderId + '-信息查看', |
|
|
|
|
routerState: 'view', |
|
|
|
|
}, |
|
|
|
|
}); |
|
|
|
|
dialogHistoricalPackage.value = false; //打开历史包件弹窗 |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
|
@ -1480,6 +1622,9 @@ const replyMessage = () => {
|
|
|
|
|
margin: 0; |
|
|
|
|
margin-bottom: 0.9375vw; |
|
|
|
|
flex: 1 0 30%; |
|
|
|
|
:deep(.el-select){ |
|
|
|
|
width: 100%; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
:deep(.el-form-item__label) { |
|
|
|
|
width: 100px !important; |
|
|
|
@ -1854,4 +1999,51 @@ const replyMessage = () => {
|
|
|
|
|
display: flex; |
|
|
|
|
justify-content: flex-end; |
|
|
|
|
} |
|
|
|
|
.PackageInformation { |
|
|
|
|
width: 100%; |
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
} |
|
|
|
|
.ResponsibilityBoxS { |
|
|
|
|
width: 100%; |
|
|
|
|
display: flex; |
|
|
|
|
flex-direction: column; |
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
.leftbox { |
|
|
|
|
width: 80%; |
|
|
|
|
display: flex; |
|
|
|
|
justify-content: space-between; |
|
|
|
|
} |
|
|
|
|
.maxBox { |
|
|
|
|
display: flex; |
|
|
|
|
align-items: center; |
|
|
|
|
width: 30%; |
|
|
|
|
.title { |
|
|
|
|
width: 140px; |
|
|
|
|
color: #606266; |
|
|
|
|
font-size: 14px; |
|
|
|
|
} |
|
|
|
|
.el-select { |
|
|
|
|
width: 100%; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.el-btn { |
|
|
|
|
margin-left: 5%; |
|
|
|
|
border: none; |
|
|
|
|
display: flex; |
|
|
|
|
} |
|
|
|
|
.el_btbox { |
|
|
|
|
display: flex; |
|
|
|
|
margin-top: 10px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.NumTotal { |
|
|
|
|
width: 30%; |
|
|
|
|
margin-top: 16px; |
|
|
|
|
display: flex; |
|
|
|
|
align-items: center; |
|
|
|
|
span { |
|
|
|
|
width: 120px; |
|
|
|
|
font-size: 14px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
</style> |
|
|
|
|