|
|
|
@ -1,13 +1,18 @@ |
|
|
|
|
<template> |
|
|
|
|
<div class="order"> |
|
|
|
|
<div class="frame"> |
|
|
|
|
<el-input class="mr20" v-model="parameter.params.id" placeholder="订单编号" clearable></el-input> |
|
|
|
|
<!-- 公司名称 --> |
|
|
|
|
<el-input |
|
|
|
|
class="mr20" |
|
|
|
|
v-model="parameter.params.id" |
|
|
|
|
placeholder="订单编号" |
|
|
|
|
clearable |
|
|
|
|
></el-input> |
|
|
|
|
<!-- 公司名称 --> |
|
|
|
|
<autocomplete |
|
|
|
|
class="mr20" |
|
|
|
|
:params="parameter.params" |
|
|
|
|
:config="configAutocomplete" |
|
|
|
|
/> |
|
|
|
|
class="mr20" |
|
|
|
|
:params="parameter.params" |
|
|
|
|
:config="configAutocomplete" |
|
|
|
|
/> |
|
|
|
|
<!-- <el-select style="margin-right: 20px;" v-model="parameter.params.id" placeholder="用户名称" clearable> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in refineryList" |
|
|
|
@ -56,13 +61,13 @@ |
|
|
|
|
:data="tableData" |
|
|
|
|
style="width: 100%" |
|
|
|
|
> |
|
|
|
|
<el-table-column |
|
|
|
|
<el-table-column |
|
|
|
|
prop="id" |
|
|
|
|
label="订单ID" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
minWidth="250" |
|
|
|
|
> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column label="购方客户信息" minWidth="250"> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<p class="gray"> |
|
|
|
@ -84,29 +89,44 @@ |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
|
<el-table-column |
|
|
|
|
prop="salePrice" label="价格" minWidth="90"> |
|
|
|
|
<el-table-column prop="salePrice" label="价格" minWidth="90"> |
|
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-table-column prop="payStatus" label="支付状态" minWidth="120" show-overflow-tooltip> |
|
|
|
|
<el-table-column |
|
|
|
|
prop="payStatus" |
|
|
|
|
label="支付状态" |
|
|
|
|
minWidth="120" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<el-tag :effect="payTagType(row.payStatus).effect" :type="payTagType(row.payStatus).type">{{ payTagType(row.payStatus).label }}</el-tag> |
|
|
|
|
<el-tag |
|
|
|
|
:effect="payTagType(row.payStatus).effect" |
|
|
|
|
:type="payTagType(row.payStatus).type" |
|
|
|
|
>{{ payTagType(row.payStatus).label }}</el-tag |
|
|
|
|
> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="orderStatus" label="订单状态" minWidth="120"> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<el-tag :effect="orderTagType(row.orderStatus).effect" :type="orderTagType(row.orderStatus).type">{{ orderTagType(row.orderStatus).label }}</el-tag> |
|
|
|
|
<el-tag |
|
|
|
|
:effect="orderTagType(row.orderStatus).effect" |
|
|
|
|
:type="orderTagType(row.orderStatus).type" |
|
|
|
|
>{{ orderTagType(row.orderStatus).label }}</el-tag |
|
|
|
|
> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-table-column |
|
|
|
|
prop="orderSerialNumber" |
|
|
|
|
label="订单提货量(实际/预约)" |
|
|
|
|
minWidth="180" |
|
|
|
|
> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<span>{{ row.actQuantity|toNumberFixed }} / {{ row.preQuantity|toNumberFixed }} {{row.productMeasurement}}</span> |
|
|
|
|
<span |
|
|
|
|
>{{ row.actQuantity | toNumberFixed }} / |
|
|
|
|
{{ row.preQuantity | toNumberFixed }} |
|
|
|
|
{{ row.productMeasurement }}</span |
|
|
|
|
> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
@ -116,7 +136,10 @@ |
|
|
|
|
minWidth="180" |
|
|
|
|
> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<span>{{ row.actAmount|toNumberFixed}} / {{ row.preAmount|toNumberFixed }} 元</span> |
|
|
|
|
<span |
|
|
|
|
>{{ row.actAmount | toNumberFixed }} / |
|
|
|
|
{{ row.preAmount | toNumberFixed }} 元</span |
|
|
|
|
> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column label="时间" minWidth="235"> |
|
|
|
@ -129,30 +152,71 @@ |
|
|
|
|
</p> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="orderSerialNumber" fixed="right" label="操作" width="250"> |
|
|
|
|
<el-table-column |
|
|
|
|
prop="orderSerialNumber" |
|
|
|
|
fixed="right" |
|
|
|
|
label="操作" |
|
|
|
|
width="250" |
|
|
|
|
> |
|
|
|
|
<template slot-scope="{ row }"> |
|
|
|
|
<el-link type="primary" :underline="false" @click="detail(row)" |
|
|
|
|
>详情</el-link |
|
|
|
|
> |
|
|
|
|
<el-link v-show="row.orderStatus!=='SUBMITED'&&row.orderStatus!=='ORDER_LOCKED'" type="primary" :underline="false" @click="billOfLading(row)" |
|
|
|
|
<el-link |
|
|
|
|
v-show=" |
|
|
|
|
row.orderStatus !== 'SUBMITED' && |
|
|
|
|
row.orderStatus !== 'ORDER_LOCKED' |
|
|
|
|
" |
|
|
|
|
type="primary" |
|
|
|
|
:underline="false" |
|
|
|
|
@click="billOfLading(row)" |
|
|
|
|
>提货单</el-link |
|
|
|
|
> |
|
|
|
|
<el-popconfirm |
|
|
|
|
:title="row.orderStatus=='SUBMITED'?'是否确认订单锁定?':'是否确认下单?'" |
|
|
|
|
:title=" |
|
|
|
|
row.orderStatus == 'SUBMITED' |
|
|
|
|
? '是否确认订单锁定?' |
|
|
|
|
: '是否确认下单?' |
|
|
|
|
" |
|
|
|
|
icon-color="red" |
|
|
|
|
@confirm="Locked(row)" |
|
|
|
|
> |
|
|
|
|
<el-link v-show="row.orderStatus=='SUBMITED'||row.orderStatus=='ORDER_LOCKED'" slot="reference" type="primary" :underline="false" |
|
|
|
|
>{{row.orderStatus=='SUBMITED'?'订单锁定':'下单确认'}}</el-link |
|
|
|
|
<el-link |
|
|
|
|
v-show=" |
|
|
|
|
row.orderStatus == 'SUBMITED' || |
|
|
|
|
row.orderStatus == 'ORDER_LOCKED' |
|
|
|
|
" |
|
|
|
|
slot="reference" |
|
|
|
|
type="primary" |
|
|
|
|
:underline="false" |
|
|
|
|
>{{ |
|
|
|
|
row.orderStatus == "SUBMITED" ? "订单锁定" : "下单确认" |
|
|
|
|
}}</el-link |
|
|
|
|
> |
|
|
|
|
</el-popconfirm> |
|
|
|
|
<el-popconfirm |
|
|
|
|
:title="row.orderStatus=='SUBMITED'||row.orderStatus=='ORDER_LOCKED'?'是否确认取消订单?':'是否确认退款?'" |
|
|
|
|
:title=" |
|
|
|
|
row.orderStatus == 'SUBMITED' || |
|
|
|
|
row.orderStatus == 'ORDER_LOCKED' |
|
|
|
|
? '是否确认取消订单?' |
|
|
|
|
: '是否确认退款?' |
|
|
|
|
" |
|
|
|
|
icon-color="red" |
|
|
|
|
@confirm="orderCencle(row)" |
|
|
|
|
> |
|
|
|
|
<el-link v-show="row.orderStatus!=='CANCELED'&&row.payStatus!=='REFUNDED'" slot="reference" type="primary" :underline="false" |
|
|
|
|
>{{row.orderStatus=='SUBMITED'||row.orderStatus=='ORDER_LOCKED'?'订单取消':'订单退款'}}</el-link |
|
|
|
|
<el-link |
|
|
|
|
v-show=" |
|
|
|
|
row.orderStatus !== 'CANCELED' && row.payStatus !== 'REFUNDED' |
|
|
|
|
" |
|
|
|
|
slot="reference" |
|
|
|
|
type="primary" |
|
|
|
|
:underline="false" |
|
|
|
|
>{{ |
|
|
|
|
row.orderStatus == "SUBMITED" || |
|
|
|
|
row.orderStatus == "ORDER_LOCKED" |
|
|
|
|
? "订单取消" |
|
|
|
|
: "订单退款" |
|
|
|
|
}}</el-link |
|
|
|
|
> |
|
|
|
|
</el-popconfirm> |
|
|
|
|
</template> |
|
|
|
@ -190,7 +254,11 @@ |
|
|
|
|
</general-details> |
|
|
|
|
</el-drawer> |
|
|
|
|
<!-- 提货单 --> |
|
|
|
|
<billOfLading :billData="billData" :controlWindows="controlWindows" @closeWindow="handleCurrentChange" /> |
|
|
|
|
<billOfLading |
|
|
|
|
:billData="billData" |
|
|
|
|
:controlWindows="controlWindows" |
|
|
|
|
@closeWindow="handleCurrentChange" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
@ -204,20 +272,20 @@ import autocomplete from "components/autocomplete/index.vue"; |
|
|
|
|
import billOfLading from "./components/billOfLading.vue"; |
|
|
|
|
|
|
|
|
|
export default { |
|
|
|
|
filters:{ |
|
|
|
|
toNumberFixed(val){ |
|
|
|
|
if(val){ |
|
|
|
|
return Number(val).toFixed(2) |
|
|
|
|
}else{return '--'} |
|
|
|
|
} |
|
|
|
|
filters: { |
|
|
|
|
toNumberFixed(val) { |
|
|
|
|
if (val) { |
|
|
|
|
return Number(val).toFixed(2); |
|
|
|
|
} else { |
|
|
|
|
return "--"; |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
controlWindows: { |
|
|
|
|
add: false, |
|
|
|
|
addInfo: { |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
addInfo: {}, |
|
|
|
|
detail: false, |
|
|
|
|
bill: false, |
|
|
|
|
}, |
|
|
|
@ -231,7 +299,7 @@ export default { |
|
|
|
|
}, |
|
|
|
|
configAutocompleteLc: { |
|
|
|
|
serveTarget: serve.findByEntity, |
|
|
|
|
autocompleteKey: "name", |
|
|
|
|
autocompleteKey: "refineryName", |
|
|
|
|
labelKey: "refineryName", |
|
|
|
|
valueKey: "id", |
|
|
|
|
placeholder: "炼厂名称", |
|
|
|
@ -262,7 +330,7 @@ export default { |
|
|
|
|
params: {}, |
|
|
|
|
}, |
|
|
|
|
oilCompanyMatch: {}, |
|
|
|
|
billData:[], |
|
|
|
|
billData: [], |
|
|
|
|
mappingData: [ |
|
|
|
|
{ |
|
|
|
|
carTitle: "", |
|
|
|
@ -285,7 +353,7 @@ export default { |
|
|
|
|
generalDetails, |
|
|
|
|
billOfLading, |
|
|
|
|
autocomplete, |
|
|
|
|
productApi |
|
|
|
|
productApi, |
|
|
|
|
}, |
|
|
|
|
mounted() { |
|
|
|
|
this.$nextTick(() => { |
|
|
|
@ -301,29 +369,43 @@ export default { |
|
|
|
|
this.getByPage(); |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
payTagType(val){ |
|
|
|
|
switch(val){ |
|
|
|
|
case 'PREPAID': return {label:'预支付',type:'info'} |
|
|
|
|
case 'PAYING': return {label:'支付中',type:'warning'} |
|
|
|
|
case 'SUCCESS': return {label:'支付成功',type:'success',effect:'dark'} |
|
|
|
|
case 'FAILURE': return {label:'支付失败',type:'danger',effect:'dark'} |
|
|
|
|
case 'CANCELED': return {label:'支付取消',type:'info'} |
|
|
|
|
case 'REFUNDED': return {label:'退款成功',type:'danger',effect:'dark'} |
|
|
|
|
case 'REFUNDING': return{label:'退款中',type:'warning'} |
|
|
|
|
case 'REFUNDFAIL': return{label:'退款失败',type:'info',effect:'dark'} |
|
|
|
|
payTagType(val) { |
|
|
|
|
switch (val) { |
|
|
|
|
case "PREPAID": |
|
|
|
|
return { label: "预支付", type: "info" }; |
|
|
|
|
case "PAYING": |
|
|
|
|
return { label: "支付中", type: "warning" }; |
|
|
|
|
case "SUCCESS": |
|
|
|
|
return { label: "支付成功", type: "success", effect: "dark" }; |
|
|
|
|
case "FAILURE": |
|
|
|
|
return { label: "支付失败", type: "danger", effect: "dark" }; |
|
|
|
|
case "CANCELED": |
|
|
|
|
return { label: "支付取消", type: "info" }; |
|
|
|
|
case "REFUNDED": |
|
|
|
|
return { label: "退款成功", type: "danger", effect: "dark" }; |
|
|
|
|
case "REFUNDING": |
|
|
|
|
return { label: "退款中", type: "warning" }; |
|
|
|
|
case "REFUNDFAIL": |
|
|
|
|
return { label: "退款失败", type: "info", effect: "dark" }; |
|
|
|
|
} |
|
|
|
|
return {label:val?val:'暂无数据',type:'info',effect:'plain'} |
|
|
|
|
return { label: val ? val : "暂无数据", type: "info", effect: "plain" }; |
|
|
|
|
}, |
|
|
|
|
orderTagType(val){ |
|
|
|
|
switch(val){ |
|
|
|
|
case 'SUBMITED': return {label:'订单提交 ',type:'info'} |
|
|
|
|
case 'ORDER_LOCKED': return {label:'订单锁定',type:'warning'} |
|
|
|
|
case 'ORDER_SUCCESS': return {label:'下单成功',type:'success',effect:'dark'} |
|
|
|
|
case 'DELIVERING': return {label:'提货中', type: ''} |
|
|
|
|
case 'COMPLETE': return {label:'订单完成',type:'success',effect:'dark'} |
|
|
|
|
case 'CANCELED': return {label:'订单取消',type:'info'} |
|
|
|
|
orderTagType(val) { |
|
|
|
|
switch (val) { |
|
|
|
|
case "SUBMITED": |
|
|
|
|
return { label: "订单提交 ", type: "info" }; |
|
|
|
|
case "ORDER_LOCKED": |
|
|
|
|
return { label: "订单锁定", type: "warning" }; |
|
|
|
|
case "ORDER_SUCCESS": |
|
|
|
|
return { label: "下单成功", type: "success", effect: "dark" }; |
|
|
|
|
case "DELIVERING": |
|
|
|
|
return { label: "提货中", type: "" }; |
|
|
|
|
case "COMPLETE": |
|
|
|
|
return { label: "订单完成", type: "success", effect: "dark" }; |
|
|
|
|
case "CANCELED": |
|
|
|
|
return { label: "订单取消", type: "info" }; |
|
|
|
|
} |
|
|
|
|
return {label:val?val:'暂无数据',type:'info'} |
|
|
|
|
return { label: val ? val : "暂无数据", type: "info" }; |
|
|
|
|
}, |
|
|
|
|
// currentPage change |
|
|
|
|
handleCurrentChange(page) { |
|
|
|
@ -350,17 +432,19 @@ export default { |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
//下单取消 |
|
|
|
|
orderCencle(row){ |
|
|
|
|
if(row.orderStatus=='SUBMITED'||row.orderStatus=='ORDER_LOCKED'){ |
|
|
|
|
order.orderUpdate({id:row.id,orderStatus:'CANCELED'}).then((res) => { |
|
|
|
|
if(res.code==20000){ |
|
|
|
|
this.getByPage() |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}else{ |
|
|
|
|
order.orderRefund({id:row.id}).then((res) => { |
|
|
|
|
if(res.code==20000){ |
|
|
|
|
this.getByPage() |
|
|
|
|
orderCencle(row) { |
|
|
|
|
if (row.orderStatus == "SUBMITED" || row.orderStatus == "ORDER_LOCKED") { |
|
|
|
|
order |
|
|
|
|
.orderUpdate({ id: row.id, orderStatus: "CANCELED" }) |
|
|
|
|
.then((res) => { |
|
|
|
|
if (res.code == 20000) { |
|
|
|
|
this.getByPage(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} else { |
|
|
|
|
order.orderRefund({ id: row.id }).then((res) => { |
|
|
|
|
if (res.code == 20000) { |
|
|
|
|
this.getByPage(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
@ -371,16 +455,16 @@ export default { |
|
|
|
|
this.controlWindows.add = true; |
|
|
|
|
}, |
|
|
|
|
//提货单 |
|
|
|
|
async billOfLading(row){ |
|
|
|
|
async billOfLading(row) { |
|
|
|
|
this.controlWindows.addInfo.title = ""; |
|
|
|
|
await order.findDeliveryByOrderId(row.id).then((res) => { |
|
|
|
|
this.billData.list = res.data |
|
|
|
|
this.billData.list = res.data; |
|
|
|
|
}); |
|
|
|
|
await order.findByOrderId(row.id).then((res) => { |
|
|
|
|
this.billData.orderInfo = res.data |
|
|
|
|
this.billData.orderInfo = res.data; |
|
|
|
|
}); |
|
|
|
|
this.controlWindows.addInfo = row |
|
|
|
|
this.controlWindows.bill = true |
|
|
|
|
this.controlWindows.addInfo = row; |
|
|
|
|
this.controlWindows.bill = true; |
|
|
|
|
}, |
|
|
|
|
//详情 |
|
|
|
|
detail(row) { |
|
|
|
@ -389,16 +473,16 @@ export default { |
|
|
|
|
}, |
|
|
|
|
//订单锁定 |
|
|
|
|
Locked(row) { |
|
|
|
|
if(row.orderStatus=='SUBMITED'){ |
|
|
|
|
order.orderLock({id:row.id}).then((res) => { |
|
|
|
|
if(res.code == 20000){ |
|
|
|
|
this.getByPage() |
|
|
|
|
if (row.orderStatus == "SUBMITED") { |
|
|
|
|
order.orderLock({ id: row.id }).then((res) => { |
|
|
|
|
if (res.code == 20000) { |
|
|
|
|
this.getByPage(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}else{ |
|
|
|
|
order.orderSuccess({id:row.id}).then((res) => { |
|
|
|
|
if(res.code == 20000){ |
|
|
|
|
this.getByPage() |
|
|
|
|
} else { |
|
|
|
|
order.orderSuccess({ id: row.id }).then((res) => { |
|
|
|
|
if (res.code == 20000) { |
|
|
|
|
this.getByPage(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|