添加订单发货功能
This commit is contained in:
parent
b2ac1fac9d
commit
61398ae9bc
@ -22,3 +22,11 @@ export function deleteOrder(params) {
|
||||
params:params
|
||||
})
|
||||
}
|
||||
|
||||
export function deliveryOrder(data) {
|
||||
return request({
|
||||
url:'/order/update/delivery',
|
||||
method:'post',
|
||||
data:data
|
||||
});
|
||||
}
|
||||
|
||||
@ -146,27 +146,39 @@ export const constantRouterMap = [
|
||||
redirect: '/oms/order',
|
||||
name: 'oms',
|
||||
meta: {title: '订单', icon: 'order'},
|
||||
children: [{
|
||||
path: 'order',
|
||||
name: 'order',
|
||||
component: () => import('@/views/oms/order/index'),
|
||||
meta: {title: '订单列表', icon: 'product-list'}
|
||||
}, {
|
||||
path: 'orderSetting',
|
||||
name: 'orderSetting',
|
||||
component: () => import('@/views/oms/order/setting'),
|
||||
meta: {title: '订单设置', icon: 'order-setting'}
|
||||
}, {
|
||||
path: 'returnApply',
|
||||
name: 'returnApply',
|
||||
component: () => import('@/views/oms/apply/index'),
|
||||
meta: {title: '退货申请处理', icon: 'order-return'}
|
||||
}, {
|
||||
path: 'returnReason',
|
||||
name: 'returnReason',
|
||||
component: () => import('@/views/oms/apply/reason'),
|
||||
meta: {title: '退货原因设置', icon: 'order-return-reason'}
|
||||
}]
|
||||
children: [
|
||||
{
|
||||
path: 'order',
|
||||
name: 'order',
|
||||
component: () => import('@/views/oms/order/index'),
|
||||
meta: {title: '订单列表', icon: 'product-list'}
|
||||
},
|
||||
{
|
||||
path: 'deliverOrderList',
|
||||
name: 'deliverOrderList',
|
||||
component: () => import('@/views/oms/order/deliverOrderList'),
|
||||
meta: {title: '发货列表'},
|
||||
hidden:true
|
||||
},
|
||||
{
|
||||
path: 'orderSetting',
|
||||
name: 'orderSetting',
|
||||
component: () => import('@/views/oms/order/setting'),
|
||||
meta: {title: '订单设置', icon: 'order-setting'}
|
||||
},
|
||||
{
|
||||
path: 'returnApply',
|
||||
name: 'returnApply',
|
||||
component: () => import('@/views/oms/apply/index'),
|
||||
meta: {title: '退货申请处理', icon: 'order-return'}
|
||||
},
|
||||
{
|
||||
path: 'returnReason',
|
||||
name: 'returnReason',
|
||||
component: () => import('@/views/oms/apply/reason'),
|
||||
meta: {title: '退货原因设置', icon: 'order-return-reason'}
|
||||
}
|
||||
]
|
||||
},
|
||||
{path: '*', redirect: '/404', hidden: true}
|
||||
]
|
||||
|
||||
95
src/views/oms/order/deliverOrderList.vue
Normal file
95
src/views/oms/order/deliverOrderList.vue
Normal file
@ -0,0 +1,95 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-card class="operate-container" shadow="never">
|
||||
<i class="el-icon-tickets"></i>
|
||||
<span>发货列表</span>
|
||||
</el-card>
|
||||
<div class="table-container">
|
||||
<el-table ref="deliverOrderTable"
|
||||
style="width: 100%;"
|
||||
:data="list" border>
|
||||
<el-table-column label="订单编号" width="180" align="center">
|
||||
<template slot-scope="scope">{{scope.row.orderSn}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="收货人" width="180" align="center">
|
||||
<template slot-scope="scope">{{scope.row.receiverName}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="手机号码" width="160" align="center">
|
||||
<template slot-scope="scope">{{scope.row.receiverPhone}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="邮政编码" width="160" align="center">
|
||||
<template slot-scope="scope">{{scope.row.receiverPostCode}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="收货地址" align="center">
|
||||
<template slot-scope="scope">{{scope.row.address}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="配送方式" width="160" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-select placeholder="请选择物流公司"
|
||||
v-model="scope.row.deliveryCompany"
|
||||
size="small">
|
||||
<el-option v-for="item in companyOptions"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="物流单号" width="180" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input size="small" v-model="scope.row.deliverySn"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div style="margin-top: 15px;text-align: center">
|
||||
<el-button @click="cancel">取消</el-button>
|
||||
<el-button @click="confirm" type="primary">确定</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {deliveryOrder} from '@/api/order'
|
||||
const defaultLogisticsCompanies=["顺丰快递","圆通快递","中通快递","韵达快递"];
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
name: 'deliverOrderList',
|
||||
list:[],
|
||||
companyOptions:defaultLogisticsCompanies
|
||||
}
|
||||
},
|
||||
created(){
|
||||
this.list= this.$route.query.list;
|
||||
},
|
||||
methods:{
|
||||
cancel(){
|
||||
this.$router.back();
|
||||
},
|
||||
confirm(){
|
||||
this.$confirm('是否要进行发货操作?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
deliveryOrder(this.list).then(response=>{
|
||||
this.$router.back();
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: '发货成功!'
|
||||
});
|
||||
});
|
||||
}).catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消发货'
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style></style>
|
||||
|
||||
|
||||
@ -319,7 +319,10 @@
|
||||
this.closeOrder.dialogVisible=true;
|
||||
this.closeOrder.orderIds=[row.id];
|
||||
},
|
||||
handleDeliveryOrder(index, row){},
|
||||
handleDeliveryOrder(index, row){
|
||||
let listItem = this.covertOrder(row);
|
||||
this.$router.push({path:'/oms/deliverOrderList',query:{list:[listItem]}})
|
||||
},
|
||||
handleViewLogistics(index, row){},
|
||||
handleDeleteOrder(index, row){
|
||||
let ids=[];
|
||||
@ -337,6 +340,21 @@
|
||||
}
|
||||
if(this.operateType===1){
|
||||
//批量发货
|
||||
let list=[];
|
||||
for(let i=0;i<this.multipleSelection.length;i++){
|
||||
if(this.multipleSelection[i].status===1){
|
||||
list.push(this.covertOrder(this.multipleSelection[i]));
|
||||
}
|
||||
}
|
||||
if(list.length===0){
|
||||
this.$message({
|
||||
message: '选中订单中没有可以发货的订单',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.$router.push({path:'/oms/deliverOrderList',query:{list:list}})
|
||||
}else if(this.operateType===2){
|
||||
//关闭订单
|
||||
this.closeOrder.orderIds=[];
|
||||
@ -405,6 +423,20 @@
|
||||
this.getList();
|
||||
});
|
||||
})
|
||||
},
|
||||
covertOrder(order){
|
||||
let address=order.receiverProvince+order.receiverCity+order.receiverRegion+order.receiverDetailAddress;
|
||||
let listItem={
|
||||
orderId:order.id,
|
||||
orderSn:order.orderSn,
|
||||
receiverName:order.receiverName,
|
||||
receiverPhone:order.receiverPhone,
|
||||
receiverPostCode:order.receiverPostCode,
|
||||
address:address,
|
||||
deliveryCompany:null,
|
||||
deliverySn:null
|
||||
};
|
||||
return listItem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user