完善出库管理
This commit is contained in:
@@ -5,7 +5,8 @@ export default {
|
||||
// 查询分页列表
|
||||
listPage: function(params) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsOutBill/listPage',
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseoutbill/listPage',
|
||||
method: 'post',
|
||||
data: params,
|
||||
headers: {
|
||||
@@ -14,86 +15,172 @@ export default {
|
||||
})
|
||||
},
|
||||
|
||||
// 详情初始化
|
||||
init: function(data) {
|
||||
// 订单商品明细
|
||||
orderGoodsDetail: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsOutBill/details',
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseoutbilldetail/selectDetailsByBillSid',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
// 初始配货单
|
||||
initDistribution: function(data) {
|
||||
// 库位分配
|
||||
orderRackDistributionDetail: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsDistributeBill/getInit',
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseinvoice/details',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
// 新增、保存
|
||||
save: function(data) {
|
||||
// 收货地址
|
||||
orderReceivingAddressDetail: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsOutBill/saveOrUpdateOutBill',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseinvoice/details',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
// 确认
|
||||
submit: function(data) {
|
||||
// 发票明细
|
||||
orderInvoiveDetail: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsOutBill/confirm',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseinvoice/details',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
// 新增、保存 配货单
|
||||
saveDistribution: function(data) {
|
||||
// 保存发票明细
|
||||
saveOrderInvoive: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsDistributeBill/saveOrUpdateBill',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
deleteBySids: function(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsShelfBill/delBySids',
|
||||
method: 'DELETE',
|
||||
data: data,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
// 查询分页列表
|
||||
getGoodsListPage: function(params) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/WmsOutBill/getInventoryList',
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/apiadmin/warehouseinvoice/saveOrUpdate',
|
||||
method: 'post',
|
||||
data: params,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
|
||||
// 备注/留言
|
||||
orderRemarksDetail: function(data) {
|
||||
return request({
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseinvoice/details',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
// 操作记录
|
||||
orderOperationDetail: function(data) {
|
||||
return request({
|
||||
baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
|
||||
url: '/wms/apiadmin/warehouseinvoice/details',
|
||||
method: 'get',
|
||||
data: data
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
// // 查询分页列表
|
||||
// listPage: function(params) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsOutBill/listPage',
|
||||
// method: 'post',
|
||||
// data: params,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// })
|
||||
// },
|
||||
|
||||
// // 详情初始化
|
||||
// init: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsOutBill/details',
|
||||
// method: 'get',
|
||||
// data: data
|
||||
// });
|
||||
// },
|
||||
|
||||
// // 初始配货单
|
||||
// initDistribution: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsDistributeBill/getInit',
|
||||
// method: 'get',
|
||||
// data: data
|
||||
// });
|
||||
// },
|
||||
|
||||
|
||||
// // 新增、保存
|
||||
// save: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsOutBill/saveOrUpdateOutBill',
|
||||
// method: 'post',
|
||||
// data: data,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// });
|
||||
// },
|
||||
|
||||
// // 确认
|
||||
// submit: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsOutBill/confirm',
|
||||
// method: 'post',
|
||||
// data: data,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// });
|
||||
// },
|
||||
|
||||
|
||||
|
||||
|
||||
// // 新增、保存 配货单
|
||||
// saveDistribution: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsDistributeBill/saveOrUpdateBill',
|
||||
// method: 'post',
|
||||
// data: data,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// });
|
||||
// },
|
||||
|
||||
|
||||
// deleteBySids: function(data) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsShelfBill/delBySids',
|
||||
// method: 'DELETE',
|
||||
// data: data,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// })
|
||||
// },
|
||||
|
||||
// // 查询分页列表
|
||||
// getGoodsListPage: function(params) {
|
||||
// return request({
|
||||
// url: '/wms/apiadmin/WmsOutBill/getInventoryList',
|
||||
// method: 'post',
|
||||
// data: params,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// })
|
||||
// },
|
||||
|
||||
}
|
||||
|
||||
@@ -20,7 +20,11 @@ export function putDictType(data) {
|
||||
return request({
|
||||
url: '/wms/apiadmin/dicttypes/update/' + data.sid,
|
||||
method: 'POST',
|
||||
data: qs.stringify(data)
|
||||
data: data,
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'token': tokens
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -30,7 +34,10 @@ export function saveDictType(data) {
|
||||
url: '/wms/apiadmin/dicttypes/save',
|
||||
method: 'POST',
|
||||
data: data,
|
||||
headers: { 'Content-Type': 'application/json', 'token': tokens }
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'token': tokens
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -49,7 +56,10 @@ export function saveMappingList(data) {
|
||||
url: '/wms/apiadmin/sysmapping/saveMappingList',
|
||||
method: 'POST',
|
||||
data: data,
|
||||
headers: { 'Content-Type': 'application/json', 'token': tokens }
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'token': tokens
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -59,7 +69,10 @@ export function selectMappingListInfo(data) {
|
||||
url: '/wms/apiadmin/sysmapping/selectMappingListInfo',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: { 'Content-Type': 'application/json', 'token': tokens }
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'token': tokens
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -69,6 +82,9 @@ export function delDictType(data) {
|
||||
url: '/wms/apiadmin/dicttypes/delete/' + data.sid,
|
||||
method: 'DELETE',
|
||||
data: data,
|
||||
headers: { 'Content-Type': 'application/json', 'token': tokens }
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'token': tokens
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -226,13 +226,49 @@ export const constantRoutes = [
|
||||
},
|
||||
children: [{
|
||||
path: '/outStorage/index',
|
||||
component: () => import('@/views/outStorage/index'),
|
||||
component: () => import('@/views/outStorage/outStorage/index'),
|
||||
name: 'OutStorage',
|
||||
meta: {
|
||||
title: '出库单管理',
|
||||
noCache: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/toAllocated/index',
|
||||
component: () => import('@/views/outStorage/toAllocated/index'),
|
||||
name: 'ToAllocated',
|
||||
meta: {
|
||||
title: '待分配',
|
||||
noCache: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/zeroPicking/index',
|
||||
component: () => import('@/views/outStorage/zeroPicking/index'),
|
||||
name: 'ZeroPicking',
|
||||
meta: {
|
||||
title: '零拣打单',
|
||||
noCache: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/toOutStorage/index',
|
||||
component: () => import('@/views/outStorage/toOutStorage/index'),
|
||||
name: 'ToOutStorage',
|
||||
meta: {
|
||||
title: '待出库',
|
||||
noCache: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/alreadyOutStorage/index',
|
||||
component: () => import('@/views/outStorage/alreadyOutStorage/index'),
|
||||
name: 'AlreadyOutStorage',
|
||||
meta: {
|
||||
title: '已出库',
|
||||
noCache: true
|
||||
}
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
|
||||
649
src/views/outStorage/alreadyOutStorage/index.vue
Normal file
649
src/views/outStorage/alreadyOutStorage/index.vue
Normal file
@@ -0,0 +1,649 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<div v-show="viewState == 1">
|
||||
<button-bar ref="btnbar" view-title="待分配管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
|
||||
<div class="main-content">
|
||||
<div class="searchcon">
|
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow">
|
||||
{{ searchxianshitit }}
|
||||
</el-button>
|
||||
<div v-show="isSearchShow" class="search">
|
||||
<el-form :inline="true" class="tab-header">
|
||||
<el-form-item label="外部单号">
|
||||
<el-input v-model="queryParams.params.externalOrderNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="承运商">
|
||||
<el-input v-model="queryParams.params.carrier" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="运单号">
|
||||
<el-input v-model="queryParams.params.waybillNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="买家">
|
||||
<el-input v-model="queryParams.params.buyer" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号">
|
||||
<el-input v-model="queryParams.params.mobile" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="详细地址">
|
||||
<el-input v-model="queryParams.params.address" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="出库类型">
|
||||
<el-select v-model="queryParams.params.outboundType" placeholder="请选择" style="width: 200px;">
|
||||
<el-option v-for="(item,i) in outboundTypeList" :key="i" :label="item.name" :value="item.sid">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="下单时间">
|
||||
<el-date-picker v-model="queryParams.params.orderTimeStart" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>至
|
||||
<el-date-picker v-model="queryParams.params.orderTimeEnd" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="btn" style="text-align: center;">
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start 项目列表头部 -->
|
||||
<div class="listtop">
|
||||
<div class="tit">待分配列表</div>
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div>
|
||||
<!-- End 项目列表头部 -->
|
||||
<!-- Start 项目列表 -->
|
||||
<div class="">
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
|
||||
@selection-change="selectionLineChangeHandle" @row-click="rowItemClick">
|
||||
<el-table-column fixed width="50" type="selection" align="center" />
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="externalState" width="100" label="外部状态" align="center" />
|
||||
<el-table-column prop="billNo" width="120" label="订单号" align="center" />
|
||||
<el-table-column prop="externalOrderNumber" width="120" label="外部单号" align="center" />
|
||||
<el-table-column prop="onlineOrderNumber" width="120" label="线上订单号" align="center" />
|
||||
<el-table-column prop="paymentTime" width="160" label="付款时间" align="center" />
|
||||
<el-table-column prop="outboundType" width="120" label="出库类型" align="center" />
|
||||
<el-table-column prop="inventoryStatus" width="120" label="库存状态" align="center" />
|
||||
<el-table-column prop="shipper" width="100" label="货主" align="center" />
|
||||
<el-table-column prop="carrier" width="120" label="承运商" align="center" />
|
||||
<el-table-column prop="waybillNumber" width="120" label="运单号" align="center" />
|
||||
<el-table-column prop="deliveryMethod" width="100" label="配送方式" align="center" />
|
||||
<el-table-column prop="buyer" width="100" label="买家" align="center" />
|
||||
<el-table-column prop="consignee" width="100" label="收货人" align="center" />
|
||||
<el-table-column prop="address" width="200" label="详细地址" align="center" />
|
||||
<el-table-column prop="mobile" width="100" label="手机号" align="center" />
|
||||
<el-table-column prop="actualPayment" width="80" label="实付" align="center" />
|
||||
<el-table-column prop="discount" width="80" label="优惠" align="center" />
|
||||
<el-table-column prop="freight" min-width="80" label="运费" align="center" />
|
||||
<el-table-column prop="weight" width="80" label="重量" align="center" />
|
||||
<el-table-column prop="weightEstimation" width="80" label="估重" align="center" />
|
||||
<el-table-column prop="volume" width="80" label="体积" align="center" />
|
||||
<el-table-column prop="quantity" width="100" label="商品总数" align="center" />
|
||||
<el-table-column prop="orderTime" width="160" label="下单时间" align="center" />
|
||||
<el-table-column prop="deliveryTime" width="160" label="到货时间" align="center" />
|
||||
<el-table-column prop="latestDeliveryTime" width="160" label="最晚发货时间" align="center" />
|
||||
|
||||
</el-table>
|
||||
</div>
|
||||
<!-- End 项目列表 -->
|
||||
<!-- <div class="pages">
|
||||
<div class="tit" /> -->
|
||||
<!-- 翻页 -->
|
||||
<!-- <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div> -->
|
||||
|
||||
<!-- 列表底部信息 -->
|
||||
<div class="">
|
||||
<el-tabs v-model="activeName" type="border-card">
|
||||
<el-tab-pane name="first">
|
||||
<span slot="label">订单明细(共: {{from.detailsList.length}} 笔)</span>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" />
|
||||
<el-table-column prop="barCode" label="商品条码" align="center" />
|
||||
<el-table-column prop="unit" label="单位" align="center" />
|
||||
<el-table-column prop="price" label="单价" align="center" />
|
||||
<el-table-column prop="orderCount" label="数量" align="center" />
|
||||
<el-table-column prop="actualPrice" label="应收" align="center" />
|
||||
<el-table-column prop="salesAmount" label="实际成交单价" align="center" />
|
||||
<el-table-column prop="serialNumber" label="销售金额" align="center" />
|
||||
<el-table-column prop="batchNumber" label="序列号" align="center" />
|
||||
<el-table-column prop="reack" label="库位" align="center" />
|
||||
<el-table-column prop="batchNumber" label="指定批次号" align="center" />
|
||||
<el-table-column prop="dateOfManufacture" label="指定生产日期" align="center" />
|
||||
<el-table-column prop="expirationDate" label="指定过期日期" align="center" />
|
||||
<el-table-column prop="batchExpansion" label="指定批次扩展属性" align="center" />
|
||||
<el-table-column prop="remarks" label="明细备注" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="two" label="库位分配">
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="three" label="收件地址">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">收货人</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.consignee }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">固话</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.fixedLine }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">手机号</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.mobile }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">省</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.province }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">市</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.city }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">县</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.county }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">详细地址</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.address }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="four" label="发票信息">
|
||||
|
||||
<div style="display: flex;flex-direction: row;">
|
||||
|
||||
<div style="flex: 1;">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02" style="margin-top: -10px;">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票类型</div>
|
||||
<el-select v-model="from.billState" placeholder="请选择" class="addinputInfo addinputw">
|
||||
<el-option v-for="(item,i) in billingTypeList" :key="item.dictKey" :label="item.dictValue"
|
||||
:value="item.dictKey">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票方</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">抬头</div>
|
||||
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票总金额</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">税号</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票备注</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">内容类型</div>
|
||||
<el-form-item> <el-radio-group v-model="from.state" size="small" class="addinputInfo addinputw">
|
||||
<el-radio :label="2">发票商品</el-radio>
|
||||
<el-radio :label="3">自定义明细</el-radio>
|
||||
</el-radio-group></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="text-align: center;margin-top: 5px">
|
||||
<el-button type="primary" size="small" @click="saveInvoice">保存</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
<div style="flex: 1;" v-show="from.state==3">
|
||||
<div style="margin-bottom: 5px">
|
||||
<el-button type="primary" size="small" @click="chooseGoods">选择商品</el-button>
|
||||
</div>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="five" label="备注/留言">
|
||||
<div style="display: flex;flex-direction: row;justify-content: flex-start;">
|
||||
<div style="width: 300px;">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">买家留言</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 15px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">线上备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">系统备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="six" label="操作记录">
|
||||
<el-table :data="from.operationList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="createTime" label="操作时间" width="250" align="center" />
|
||||
<el-table-column prop="userName" label="操作账号" width="180" align="center" />
|
||||
<el-table-column prop="content" label="操作内容" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
|
||||
</el-tabs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import req from '@/api/outStorage/outStorage.js'
|
||||
import ButtonBar from '@/components/ButtonBar'
|
||||
import Pagination from '@/components/pagination'
|
||||
import pageye from '@/components/pagination/pageye'
|
||||
// import divAdd from './inStorageAdd.vue'
|
||||
// import divInfo from './inStorageInfo.vue'
|
||||
import {
|
||||
// getTypeValueList,
|
||||
typeValues,
|
||||
choiceSupplierInfo
|
||||
} from '@/api/Common/dictcommons'
|
||||
export default {
|
||||
components: {
|
||||
ButtonBar,
|
||||
Pagination,
|
||||
pageye,
|
||||
// divAdd,
|
||||
// divInfo,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: "first",
|
||||
activeIndex: "1",
|
||||
dialogVisible: false,
|
||||
btndisabled: false,
|
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看
|
||||
isSearchShow: false,
|
||||
searchxianshitit: '显示查询条件',
|
||||
tableLoading: false,
|
||||
dataList: [],
|
||||
btnList: [{
|
||||
type: 'primary',
|
||||
size: 'small',
|
||||
icon: 'plus',
|
||||
btnKey: 'toAdd',
|
||||
btnLabel: '打到零拣'
|
||||
},
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toPrintBill',
|
||||
// btnLabel: '改承运商'
|
||||
// },
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toBuild',
|
||||
// btnLabel: '生产电子面单'
|
||||
// },
|
||||
{
|
||||
type: 'info',
|
||||
size: 'small',
|
||||
icon: 'cross',
|
||||
btnKey: 'doClose',
|
||||
btnLabel: '关闭'
|
||||
}
|
||||
],
|
||||
queryParams: {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
},
|
||||
sids: [],
|
||||
selectionList: [],
|
||||
billingTypeList: [],
|
||||
outboundTypeList: [{
|
||||
sid: "1",
|
||||
name: "销售出库"
|
||||
}],
|
||||
from: {
|
||||
detailsList: [],
|
||||
operationList: []
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$refs['btnbar'].setButtonList(this.btnList)
|
||||
},
|
||||
created() {
|
||||
this.init()
|
||||
this.loadList()
|
||||
},
|
||||
methods: {
|
||||
|
||||
init() {
|
||||
|
||||
typeValues({
|
||||
type: 'billingType'
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.billingTypeList = res.data
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
|
||||
rowItemClick(row) {
|
||||
console.log("row", row);
|
||||
this.rowItemSid = row.sid
|
||||
|
||||
if (this.rowItemSid == '') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
showClose: true,
|
||||
message: '暂无数据'
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
req.init({
|
||||
sid: row.sid
|
||||
}).then((resp) => {
|
||||
this.from = resp.data
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
// this.handleSelect(this.activeIndex)
|
||||
},
|
||||
|
||||
handleSelect(val) {
|
||||
console.log("val", val);
|
||||
this.activeIndex = val
|
||||
},
|
||||
|
||||
selectionLineChangeHandle(val) {
|
||||
console.log("val", val);
|
||||
|
||||
this.selectionList = val
|
||||
const aa = []
|
||||
val.forEach(element => {
|
||||
aa.push(element.sid)
|
||||
})
|
||||
this.sids = aa
|
||||
|
||||
},
|
||||
// 搜索条件效果
|
||||
clicksearchShow() {
|
||||
this.isSearchShow = !this.isSearchShow
|
||||
if (this.isSearchShow) {
|
||||
this.searchxianshitit = '隐藏查询条件'
|
||||
} else {
|
||||
this.searchxianshitit = '显示查询条件'
|
||||
}
|
||||
},
|
||||
btnHandle(btnKey) {
|
||||
switch (btnKey) {
|
||||
case 'toAdd':
|
||||
this.toAdd()
|
||||
break
|
||||
case 'toPrintBill':
|
||||
this.toPrintBill()
|
||||
break
|
||||
case 'toPrintCode':
|
||||
this.toPrintCode()
|
||||
break
|
||||
case 'toBuild':
|
||||
this.toBuild()
|
||||
break
|
||||
case 'doClose':
|
||||
this.doClose()
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
},
|
||||
loadList() {
|
||||
this.tableLoading = true
|
||||
this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.queryParams.params.menuUrl = this.$route.path
|
||||
req.listPage(this.queryParams).then((resp) => {
|
||||
this.tableLoading = false
|
||||
if (resp.success) {
|
||||
const data = resp.data
|
||||
this.queryParams.total = data.total
|
||||
this.dataList = data.records
|
||||
this.rowItemClick(this.dataList[0])
|
||||
} else {
|
||||
// 根据resp.code进行异常情况处理
|
||||
this.dataList = []
|
||||
this.queryParams.total = 0
|
||||
}
|
||||
}).catch(() => {
|
||||
this.tableLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
// 序号
|
||||
indexMethod(index) {
|
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
|
||||
var pageindex = index + 1 + pagestart
|
||||
return pageindex
|
||||
},
|
||||
dosearch() {
|
||||
this.queryParams.current = 1
|
||||
this.loadList()
|
||||
},
|
||||
resetQuery() {
|
||||
this.queryParams = {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
}
|
||||
this.loadList()
|
||||
},
|
||||
toAdd() {
|
||||
|
||||
this.dialogParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.dialogParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.dialogParams.params.menuUrl = this.$route.path
|
||||
req.getReservationBill(this.dialogParams).then((resp) => {
|
||||
console.log("rgetReservationBill>>>>>", resp)
|
||||
if (resp.success) {
|
||||
this.billList = resp.data.records
|
||||
this.dialogVisible = true
|
||||
}
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
},
|
||||
toPrintBill() {
|
||||
if (this.selectionList.length != 1) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "请选择一条数据。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (this.selectionList[0].billState == '新建') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "此记录未完成,不可操作。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
this.viewState = 5
|
||||
this.$refs['divAddupShelfRecord'].showEdit(this.selectionList[0])
|
||||
},
|
||||
toPrintCode(row) {
|
||||
this.viewState = 3
|
||||
this.$refs['divadd'].showEdit(row)
|
||||
|
||||
},
|
||||
toBuild(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showEdit(row)
|
||||
},
|
||||
doClose() {
|
||||
this.$store.dispatch('tagsView/delView', this.$route)
|
||||
this.$router.go(-1)
|
||||
},
|
||||
toRelevancy(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showAdd(row)
|
||||
},
|
||||
resetState() {
|
||||
this.viewState = 1
|
||||
},
|
||||
saveInvoice() {
|
||||
|
||||
},
|
||||
chooseGoods() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/deep/ .el-form-item__error {
|
||||
margin-left: 120px !important;
|
||||
}
|
||||
|
||||
.must {
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.span-sty {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.addinputInfo {
|
||||
margin-left: 80px !important;
|
||||
}
|
||||
|
||||
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
|
||||
margin-left: 80px !important;
|
||||
width: calc(100% - 75px);
|
||||
}
|
||||
|
||||
.first_row {
|
||||
border-top: 1px solid #E0E3EB;
|
||||
}
|
||||
|
||||
.titleOne {
|
||||
padding: 7px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-menu-item.is-active {
|
||||
background-color: #3370ff !important;
|
||||
color: #fff;
|
||||
|
||||
span {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.el-submenu__title.is-active {
|
||||
background: #1c88cf !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
</style>
|
||||
765
src/views/outStorage/toAllocated/index.vue
Normal file
765
src/views/outStorage/toAllocated/index.vue
Normal file
@@ -0,0 +1,765 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<div v-show="viewState == 1">
|
||||
<button-bar ref="btnbar" view-title="待分配管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
|
||||
<div class="main-content">
|
||||
<div class="searchcon">
|
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow">
|
||||
{{ searchxianshitit }}
|
||||
</el-button>
|
||||
<div v-show="isSearchShow" class="search">
|
||||
<el-form :inline="true" class="tab-header">
|
||||
<el-form-item label="外部单号">
|
||||
<el-input v-model="queryParams.params.externalOrderNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="承运商">
|
||||
<el-input v-model="queryParams.params.carrier" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="运单号">
|
||||
<el-input v-model="queryParams.params.waybillNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="买家">
|
||||
<el-input v-model="queryParams.params.buyer" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号">
|
||||
<el-input v-model="queryParams.params.mobile" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="详细地址">
|
||||
<el-input v-model="queryParams.params.address" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="出库类型">
|
||||
<el-select v-model="queryParams.params.outboundType" placeholder="请选择" style="width: 200px;">
|
||||
<el-option v-for="(item,i) in outboundTypeList" :key="i" :label="item.name" :value="item.sid">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="下单时间">
|
||||
<el-date-picker v-model="queryParams.params.orderTimeStart" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>至
|
||||
<el-date-picker v-model="queryParams.params.orderTimeEnd" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="btn" style="text-align: center;">
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start 项目列表头部 -->
|
||||
<div class="listtop">
|
||||
<div class="tit">待分配列表</div>
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div>
|
||||
<!-- End 项目列表头部 -->
|
||||
<!-- Start 项目列表 -->
|
||||
<div class="">
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
|
||||
@selection-change="selectionLineChangeHandle" @row-click="rowItemClick">
|
||||
<el-table-column fixed width="50" type="selection" align="center" />
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="externalState" width="100" label="外部状态" align="center" />
|
||||
<el-table-column prop="billNo" width="120" label="订单号" align="center" />
|
||||
<el-table-column prop="externalOrderNumber" width="120" label="外部单号" align="center" />
|
||||
<el-table-column prop="onlineOrderNumber" width="120" label="线上订单号" align="center" />
|
||||
<el-table-column prop="paymentTime" width="160" label="付款时间" align="center" />
|
||||
<el-table-column prop="outboundType" width="120" label="出库类型" align="center" />
|
||||
<el-table-column prop="inventoryStatus" width="120" label="库存状态" align="center" />
|
||||
<el-table-column prop="shipper" width="100" label="货主" align="center" />
|
||||
<el-table-column prop="carrier" width="120" label="承运商" align="center" />
|
||||
<el-table-column prop="waybillNumber" width="120" label="运单号" align="center" />
|
||||
<el-table-column prop="deliveryMethod" width="100" label="配送方式" align="center" />
|
||||
<el-table-column prop="buyer" width="100" label="买家" align="center" />
|
||||
<el-table-column prop="consignee" width="100" label="收货人" align="center" />
|
||||
<el-table-column prop="address" width="200" label="详细地址" align="center" />
|
||||
<el-table-column prop="mobile" width="100" label="手机号" align="center" />
|
||||
<el-table-column prop="actualPayment" width="80" label="实付" align="center" />
|
||||
<el-table-column prop="discount" width="80" label="优惠" align="center" />
|
||||
<el-table-column prop="freight" min-width="80" label="运费" align="center" />
|
||||
<el-table-column prop="weight" width="80" label="重量" align="center" />
|
||||
<el-table-column prop="weightEstimation" width="80" label="估重" align="center" />
|
||||
<el-table-column prop="volume" width="80" label="体积" align="center" />
|
||||
<el-table-column prop="quantity" width="100" label="商品总数" align="center" />
|
||||
<el-table-column prop="orderTime" width="160" label="下单时间" align="center" />
|
||||
<el-table-column prop="deliveryTime" width="160" label="到货时间" align="center" />
|
||||
<el-table-column prop="latestDeliveryTime" width="160" label="最晚发货时间" align="center" />
|
||||
|
||||
</el-table>
|
||||
</div>
|
||||
<!-- End 项目列表 -->
|
||||
<!-- <div class="pages">
|
||||
<div class="tit" /> -->
|
||||
<!-- 翻页 -->
|
||||
<!-- <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div> -->
|
||||
|
||||
<!-- 列表底部信息 -->
|
||||
<div class="">
|
||||
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
|
||||
<el-tab-pane name="first">
|
||||
<span slot="label">订单明细(共: {{from.first .length}} 笔)</span>
|
||||
<el-table :data="from.first " border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" />
|
||||
<el-table-column prop="barCode" label="商品条码" align="center" />
|
||||
<el-table-column prop="unit" label="单位" align="center" />
|
||||
<el-table-column prop="price" label="单价" align="center" />
|
||||
<el-table-column prop="orderCount" label="数量" align="center" />
|
||||
<el-table-column prop="actualPrice" label="应收" align="center" />
|
||||
<el-table-column prop="salesAmount" label="实际成交单价" align="center" />
|
||||
<el-table-column prop="serialNumber" label="销售金额" align="center" />
|
||||
<el-table-column prop="batchNumber" label="序列号" align="center" />
|
||||
<el-table-column prop="reack" label="库位" align="center" />
|
||||
<el-table-column prop="batchNumber" label="指定批次号" align="center" />
|
||||
<el-table-column prop="dateOfManufacture" label="指定生产日期" align="center" />
|
||||
<el-table-column prop="expirationDate" label="指定过期日期" align="center" />
|
||||
<el-table-column prop="batchExpansion" label="指定批次扩展属性" align="center" />
|
||||
<el-table-column prop="remarks" label="明细备注" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="two" label="库位分配">
|
||||
<el-table :data="from.two" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="three" label="收件地址">
|
||||
<el-form ref="consignee" :model="from.three" class="formaddcopy02">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">收货人</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.consignee }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">固话</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.fixedLine }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">手机号</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.mobile }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">省</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.province }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">市</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.city }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">县</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.county }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">详细地址</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.three.address }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="four" label="发票信息">
|
||||
|
||||
<div style="display: flex;flex-direction: row;">
|
||||
|
||||
<div style="flex: 1;">
|
||||
<el-form ref="consignee" :model="from.four" class="formaddcopy02" style="margin-top: -10px;">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票类型</div>
|
||||
<el-select v-model="from.four.invoiceTypeValue" placeholder="请选择" class="addinputInfo addinputw"
|
||||
@change="selectInvoiceTypeChange">
|
||||
<el-option v-for="(item,i) in billingTypeList" :key="item.dictKey" :label="item.dictValue"
|
||||
:value="item.dictKey">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票方</div>
|
||||
<el-form-item> <el-input v-model="from.four.invoicingParty" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">抬头</div>
|
||||
|
||||
<el-form-item> <el-input v-model="from.four.rise" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票总金额</div>
|
||||
<el-form-item> <el-input v-model="from.four.totalAmount" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">税号</div>
|
||||
<el-form-item> <el-input v-model="from.four.dutyParagraph" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票备注</div>
|
||||
<el-form-item> <el-input v-model="from.four.remarks" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">内容类型</div>
|
||||
<el-form-item> <el-radio-group v-model="from.four.contentTypeValue" size="small"
|
||||
class="addinputInfo addinputw">
|
||||
<el-radio :label="'1'">发票商品</el-radio>
|
||||
<el-radio :label="'2'">自定义明细</el-radio>
|
||||
</el-radio-group></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="text-align: center;margin-top: 5px">
|
||||
<el-button type="primary" size="small" @click="saveInvoice">保存</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
<div style="flex: 1;" v-show="from.four.contentTypeValue=='2'">
|
||||
<div style="margin-bottom: 5px">
|
||||
<el-button type="primary" size="small" @click="chooseGoods">选择商品</el-button>
|
||||
</div>
|
||||
<el-table :data="from.four.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column fixed label="操作" width="100" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary" size="mini" @click="delGoods(scope.$index)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="unit" label="商品单位" align="center" />
|
||||
<el-table-column prop="price" label="商品单价" align="center" />
|
||||
<el-table-column prop="count" label="数量" align="center" />
|
||||
<el-table-column prop="totalAmount" label="金额" align="center" />
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="five" label="备注/留言">
|
||||
<div style="display: flex;flex-direction: row;justify-content: flex-start;">
|
||||
<div style="width: 300px;">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">买家留言</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 15px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">线上备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">系统备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="six" label="操作记录">
|
||||
<el-table :data="from.six.operationList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="createTime" label="操作时间" width="250" align="center" />
|
||||
<el-table-column prop="userName" label="操作账号" width="180" align="center" />
|
||||
<el-table-column prop="content" label="操作内容" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
|
||||
</el-tabs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<el-dialog title="选择预约单" :visible.sync="dialogVisible" :before-close="handleClose"
|
||||
style="width:150%;margin-left: -20%;">
|
||||
|
||||
<el-table :data="from.first" border style="width: 100%" @selection-change="handleSelectionChange" ref="main">
|
||||
<el-table-column fixed width="50" type="selection" align="center" />
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="unit" label="商品单位" align="center" />
|
||||
<el-table-column prop="price" label="商品单价" align="center" />
|
||||
<el-table-column prop="count" label="数量" align="center" />
|
||||
<el-table-column prop="totalAmount" label="金额" align="center" />
|
||||
</el-table>
|
||||
|
||||
<div style="display: flex;flex-direction: row;width: 100%;justify-content: center;align-items: center;">
|
||||
<el-button type="primary" style="margin-top: 20px;" @click="saveData">确 定</el-button>
|
||||
</div>
|
||||
|
||||
</el-dialog>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import req from '@/api/outStorage/outStorage.js'
|
||||
import ButtonBar from '@/components/ButtonBar'
|
||||
import Pagination from '@/components/pagination'
|
||||
import pageye from '@/components/pagination/pageye'
|
||||
// import divAdd from './inStorageAdd.vue'
|
||||
// import divInfo from './inStorageInfo.vue'
|
||||
import {
|
||||
// getTypeValueList,
|
||||
typeValues,
|
||||
choiceSupplierInfo
|
||||
} from '@/api/Common/dictcommons'
|
||||
export default {
|
||||
components: {
|
||||
ButtonBar,
|
||||
Pagination,
|
||||
pageye,
|
||||
// divAdd,
|
||||
// divInfo,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: "first",
|
||||
activeIndex: "1",
|
||||
dialogVisible: false,
|
||||
btndisabled: false,
|
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看
|
||||
isSearchShow: false,
|
||||
searchxianshitit: '显示查询条件',
|
||||
tableLoading: false,
|
||||
dataList: [],
|
||||
btnList: [{
|
||||
type: 'primary',
|
||||
size: 'small',
|
||||
icon: 'plus',
|
||||
btnKey: 'toAdd',
|
||||
btnLabel: '打到零拣'
|
||||
},
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toPrintBill',
|
||||
// btnLabel: '改承运商'
|
||||
// },
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toBuild',
|
||||
// btnLabel: '生产电子面单'
|
||||
// },
|
||||
{
|
||||
type: 'info',
|
||||
size: 'small',
|
||||
icon: 'cross',
|
||||
btnKey: 'doClose',
|
||||
btnLabel: '关闭'
|
||||
}
|
||||
],
|
||||
queryParams: {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
},
|
||||
sids: [],
|
||||
selectionList: [],
|
||||
rowItemSid: "",
|
||||
billingTypeList: [],
|
||||
outboundTypeList: [{
|
||||
sid: "1",
|
||||
name: "销售出库"
|
||||
}],
|
||||
from: {
|
||||
first: [],
|
||||
two: [],
|
||||
three: {},
|
||||
four: {},
|
||||
five: {},
|
||||
six: []
|
||||
},
|
||||
goodsList: []
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$refs['btnbar'].setButtonList(this.btnList)
|
||||
},
|
||||
created() {
|
||||
this.init()
|
||||
this.loadList()
|
||||
},
|
||||
methods: {
|
||||
|
||||
init() {
|
||||
|
||||
typeValues({
|
||||
type: 'billingType'
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.billingTypeList = res.data
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
handleClick(table) {
|
||||
console.log("handleClick", table.name);
|
||||
|
||||
// 订单明细
|
||||
if (table.name == 'first') {
|
||||
this.from.first = []
|
||||
req.orderGoodsDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.first = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
// 库位分配
|
||||
if (table.name == 'two') {
|
||||
this.from.two = []
|
||||
req.orderRackDistributionDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.two = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
// 收件地址
|
||||
if (table.name == 'three') {
|
||||
this.from.three = {}
|
||||
req.orderReceivingAddressDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.three = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
// 发票信息
|
||||
if (table.name == 'four') {
|
||||
this.from.four = {}
|
||||
req.orderInvoiveDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.four = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
// 备注/留言
|
||||
if (table.name == 'five') {
|
||||
this.from.five = {}
|
||||
req.orderRemarksDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.five = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
// 操作记录
|
||||
if (table.name == 'six') {
|
||||
this.from.six = []
|
||||
req.orderOperationDetail({
|
||||
sid: this.rowItemSid
|
||||
}).then((resp) => {
|
||||
this.from.six = resp.data
|
||||
}).catch(() => {})
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
rowItemClick(row) {
|
||||
console.log("row", row);
|
||||
this.rowItemSid = row.sid
|
||||
|
||||
if (this.rowItemSid == '') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
showClose: true,
|
||||
message: '暂无数据'
|
||||
})
|
||||
return
|
||||
}
|
||||
},
|
||||
|
||||
selectionLineChangeHandle(val) {
|
||||
console.log("val", val);
|
||||
|
||||
this.selectionList = val
|
||||
const aa = []
|
||||
val.forEach(element => {
|
||||
aa.push(element.sid)
|
||||
})
|
||||
this.sids = aa
|
||||
|
||||
},
|
||||
// 搜索条件效果
|
||||
clicksearchShow() {
|
||||
this.isSearchShow = !this.isSearchShow
|
||||
if (this.isSearchShow) {
|
||||
this.searchxianshitit = '隐藏查询条件'
|
||||
} else {
|
||||
this.searchxianshitit = '显示查询条件'
|
||||
}
|
||||
},
|
||||
btnHandle(btnKey) {
|
||||
switch (btnKey) {
|
||||
case 'toAdd':
|
||||
this.toAdd()
|
||||
break
|
||||
case 'toPrintBill':
|
||||
this.toPrintBill()
|
||||
break
|
||||
case 'toPrintCode':
|
||||
this.toPrintCode()
|
||||
break
|
||||
case 'toBuild':
|
||||
this.toBuild()
|
||||
break
|
||||
case 'doClose':
|
||||
this.doClose()
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
},
|
||||
loadList() {
|
||||
this.tableLoading = true
|
||||
this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.queryParams.params.menuUrl = this.$route.path
|
||||
req.listPage(this.queryParams).then((resp) => {
|
||||
this.tableLoading = false
|
||||
if (resp.success) {
|
||||
const data = resp.data
|
||||
this.queryParams.total = data.total
|
||||
this.dataList = data.records
|
||||
this.rowItemClick(this.dataList[0])
|
||||
this.from = {
|
||||
first: [],
|
||||
two: [],
|
||||
three: {},
|
||||
four: {},
|
||||
five: {},
|
||||
six: []
|
||||
}
|
||||
var table = {
|
||||
name: 'first'
|
||||
}
|
||||
this.handleClick(table)
|
||||
} else {
|
||||
// 根据resp.code进行异常情况处理
|
||||
this.dataList = []
|
||||
this.queryParams.total = 0
|
||||
}
|
||||
}).catch(() => {
|
||||
this.tableLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
// 序号
|
||||
indexMethod(index) {
|
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
|
||||
var pageindex = index + 1 + pagestart
|
||||
return pageindex
|
||||
},
|
||||
dosearch() {
|
||||
this.queryParams.current = 1
|
||||
this.loadList()
|
||||
},
|
||||
resetQuery() {
|
||||
this.queryParams = {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
}
|
||||
this.loadList()
|
||||
},
|
||||
toAdd() {
|
||||
|
||||
this.dialogParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.dialogParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.dialogParams.params.menuUrl = this.$route.path
|
||||
req.getReservationBill(this.dialogParams).then((resp) => {
|
||||
console.log("rgetReservationBill>>>>>", resp)
|
||||
if (resp.success) {
|
||||
this.billList = resp.data.records
|
||||
this.dialogVisible = true
|
||||
}
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
},
|
||||
toPrintBill() {
|
||||
if (this.selectionList.length != 1) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "请选择一条数据。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (this.selectionList[0].billState == '新建') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "此记录未完成,不可操作。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
this.viewState = 5
|
||||
this.$refs['divAddupShelfRecord'].showEdit(this.selectionList[0])
|
||||
},
|
||||
toPrintCode(row) {
|
||||
this.viewState = 3
|
||||
this.$refs['divadd'].showEdit(row)
|
||||
|
||||
},
|
||||
toBuild(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showEdit(row)
|
||||
},
|
||||
doClose() {
|
||||
this.$store.dispatch('tagsView/delView', this.$route)
|
||||
this.$router.go(-1)
|
||||
},
|
||||
toRelevancy(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showAdd(row)
|
||||
},
|
||||
resetState() {
|
||||
this.viewState = 1
|
||||
},
|
||||
selectInvoiceTypeChange(val) {
|
||||
|
||||
const choose = this.billingTypeList.filter((item) => item.dictKey == val)
|
||||
console.log('>>>>>>>>>selectInvoiceTypeChange', choose)
|
||||
this.from.four.invoiceType = choose[0].dictKey
|
||||
this.from.four.invoiceTypeValue = choose[0].dictValue
|
||||
},
|
||||
saveInvoice() {
|
||||
req.saveOrderInvoive(this.from.four).then((resp) => {
|
||||
|
||||
}).catch(() => {})
|
||||
},
|
||||
chooseGoods() {
|
||||
this.goodsList = []
|
||||
this.dialogVisible = true
|
||||
|
||||
},
|
||||
handleClose() {
|
||||
this.dialogVisible = false
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
console.log("val", val);
|
||||
this.goodsList = val
|
||||
},
|
||||
saveData() {
|
||||
this.from.four.detailsList = this.goodsList
|
||||
this.dialogVisible = false
|
||||
},
|
||||
delGoods(index) {
|
||||
this.from.four.detailsList.splice(index, 1)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/deep/ .el-form-item__error {
|
||||
margin-left: 120px !important;
|
||||
}
|
||||
|
||||
.must {
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.span-sty {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.addinputInfo {
|
||||
margin-left: 80px !important;
|
||||
}
|
||||
|
||||
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
|
||||
margin-left: 80px !important;
|
||||
width: calc(100% - 75px);
|
||||
}
|
||||
|
||||
.first_row {
|
||||
border-top: 1px solid #E0E3EB;
|
||||
}
|
||||
|
||||
.titleOne {
|
||||
padding: 7px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-menu-item.is-active {
|
||||
background-color: #3370ff !important;
|
||||
color: #fff;
|
||||
|
||||
span {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.el-submenu__title.is-active {
|
||||
background: #1c88cf !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
</style>
|
||||
649
src/views/outStorage/toOutStorage/index.vue
Normal file
649
src/views/outStorage/toOutStorage/index.vue
Normal file
@@ -0,0 +1,649 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<div v-show="viewState == 1">
|
||||
<button-bar ref="btnbar" view-title="待分配管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
|
||||
<div class="main-content">
|
||||
<div class="searchcon">
|
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow">
|
||||
{{ searchxianshitit }}
|
||||
</el-button>
|
||||
<div v-show="isSearchShow" class="search">
|
||||
<el-form :inline="true" class="tab-header">
|
||||
<el-form-item label="外部单号">
|
||||
<el-input v-model="queryParams.params.externalOrderNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="承运商">
|
||||
<el-input v-model="queryParams.params.carrier" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="运单号">
|
||||
<el-input v-model="queryParams.params.waybillNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="买家">
|
||||
<el-input v-model="queryParams.params.buyer" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号">
|
||||
<el-input v-model="queryParams.params.mobile" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="详细地址">
|
||||
<el-input v-model="queryParams.params.address" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="出库类型">
|
||||
<el-select v-model="queryParams.params.outboundType" placeholder="请选择" style="width: 200px;">
|
||||
<el-option v-for="(item,i) in outboundTypeList" :key="i" :label="item.name" :value="item.sid">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="下单时间">
|
||||
<el-date-picker v-model="queryParams.params.orderTimeStart" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>至
|
||||
<el-date-picker v-model="queryParams.params.orderTimeEnd" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="btn" style="text-align: center;">
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start 项目列表头部 -->
|
||||
<div class="listtop">
|
||||
<div class="tit">待分配列表</div>
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div>
|
||||
<!-- End 项目列表头部 -->
|
||||
<!-- Start 项目列表 -->
|
||||
<div class="">
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
|
||||
@selection-change="selectionLineChangeHandle" @row-click="rowItemClick">
|
||||
<el-table-column fixed width="50" type="selection" align="center" />
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="externalState" width="100" label="外部状态" align="center" />
|
||||
<el-table-column prop="billNo" width="120" label="订单号" align="center" />
|
||||
<el-table-column prop="externalOrderNumber" width="120" label="外部单号" align="center" />
|
||||
<el-table-column prop="onlineOrderNumber" width="120" label="线上订单号" align="center" />
|
||||
<el-table-column prop="paymentTime" width="160" label="付款时间" align="center" />
|
||||
<el-table-column prop="outboundType" width="120" label="出库类型" align="center" />
|
||||
<el-table-column prop="inventoryStatus" width="120" label="库存状态" align="center" />
|
||||
<el-table-column prop="shipper" width="100" label="货主" align="center" />
|
||||
<el-table-column prop="carrier" width="120" label="承运商" align="center" />
|
||||
<el-table-column prop="waybillNumber" width="120" label="运单号" align="center" />
|
||||
<el-table-column prop="deliveryMethod" width="100" label="配送方式" align="center" />
|
||||
<el-table-column prop="buyer" width="100" label="买家" align="center" />
|
||||
<el-table-column prop="consignee" width="100" label="收货人" align="center" />
|
||||
<el-table-column prop="address" width="200" label="详细地址" align="center" />
|
||||
<el-table-column prop="mobile" width="100" label="手机号" align="center" />
|
||||
<el-table-column prop="actualPayment" width="80" label="实付" align="center" />
|
||||
<el-table-column prop="discount" width="80" label="优惠" align="center" />
|
||||
<el-table-column prop="freight" min-width="80" label="运费" align="center" />
|
||||
<el-table-column prop="weight" width="80" label="重量" align="center" />
|
||||
<el-table-column prop="weightEstimation" width="80" label="估重" align="center" />
|
||||
<el-table-column prop="volume" width="80" label="体积" align="center" />
|
||||
<el-table-column prop="quantity" width="100" label="商品总数" align="center" />
|
||||
<el-table-column prop="orderTime" width="160" label="下单时间" align="center" />
|
||||
<el-table-column prop="deliveryTime" width="160" label="到货时间" align="center" />
|
||||
<el-table-column prop="latestDeliveryTime" width="160" label="最晚发货时间" align="center" />
|
||||
|
||||
</el-table>
|
||||
</div>
|
||||
<!-- End 项目列表 -->
|
||||
<!-- <div class="pages">
|
||||
<div class="tit" /> -->
|
||||
<!-- 翻页 -->
|
||||
<!-- <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div> -->
|
||||
|
||||
<!-- 列表底部信息 -->
|
||||
<div class="">
|
||||
<el-tabs v-model="activeName" type="border-card">
|
||||
<el-tab-pane name="first">
|
||||
<span slot="label">订单明细(共: {{from.detailsList.length}} 笔)</span>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" />
|
||||
<el-table-column prop="barCode" label="商品条码" align="center" />
|
||||
<el-table-column prop="unit" label="单位" align="center" />
|
||||
<el-table-column prop="price" label="单价" align="center" />
|
||||
<el-table-column prop="orderCount" label="数量" align="center" />
|
||||
<el-table-column prop="actualPrice" label="应收" align="center" />
|
||||
<el-table-column prop="salesAmount" label="实际成交单价" align="center" />
|
||||
<el-table-column prop="serialNumber" label="销售金额" align="center" />
|
||||
<el-table-column prop="batchNumber" label="序列号" align="center" />
|
||||
<el-table-column prop="reack" label="库位" align="center" />
|
||||
<el-table-column prop="batchNumber" label="指定批次号" align="center" />
|
||||
<el-table-column prop="dateOfManufacture" label="指定生产日期" align="center" />
|
||||
<el-table-column prop="expirationDate" label="指定过期日期" align="center" />
|
||||
<el-table-column prop="batchExpansion" label="指定批次扩展属性" align="center" />
|
||||
<el-table-column prop="remarks" label="明细备注" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="two" label="库位分配">
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="three" label="收件地址">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">收货人</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.consignee }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">固话</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.fixedLine }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">手机号</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.mobile }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">省</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.province }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">市</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.city }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">县</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.county }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">详细地址</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.address }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="four" label="发票信息">
|
||||
|
||||
<div style="display: flex;flex-direction: row;">
|
||||
|
||||
<div style="flex: 1;">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02" style="margin-top: -10px;">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票类型</div>
|
||||
<el-select v-model="from.billState" placeholder="请选择" class="addinputInfo addinputw">
|
||||
<el-option v-for="(item,i) in billingTypeList" :key="item.dictKey" :label="item.dictValue"
|
||||
:value="item.dictKey">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票方</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">抬头</div>
|
||||
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票总金额</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">税号</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票备注</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">内容类型</div>
|
||||
<el-form-item> <el-radio-group v-model="from.state" size="small" class="addinputInfo addinputw">
|
||||
<el-radio :label="2">发票商品</el-radio>
|
||||
<el-radio :label="3">自定义明细</el-radio>
|
||||
</el-radio-group></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="text-align: center;margin-top: 5px">
|
||||
<el-button type="primary" size="small" @click="saveInvoice">保存</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
<div style="flex: 1;" v-show="from.state==3">
|
||||
<div style="margin-bottom: 5px">
|
||||
<el-button type="primary" size="small" @click="chooseGoods">选择商品</el-button>
|
||||
</div>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="five" label="备注/留言">
|
||||
<div style="display: flex;flex-direction: row;justify-content: flex-start;">
|
||||
<div style="width: 300px;">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">买家留言</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 15px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">线上备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">系统备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="six" label="操作记录">
|
||||
<el-table :data="from.operationList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="createTime" label="操作时间" width="250" align="center" />
|
||||
<el-table-column prop="userName" label="操作账号" width="180" align="center" />
|
||||
<el-table-column prop="content" label="操作内容" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
|
||||
</el-tabs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import req from '@/api/outStorage/outStorage.js'
|
||||
import ButtonBar from '@/components/ButtonBar'
|
||||
import Pagination from '@/components/pagination'
|
||||
import pageye from '@/components/pagination/pageye'
|
||||
// import divAdd from './inStorageAdd.vue'
|
||||
// import divInfo from './inStorageInfo.vue'
|
||||
import {
|
||||
// getTypeValueList,
|
||||
typeValues,
|
||||
choiceSupplierInfo
|
||||
} from '@/api/Common/dictcommons'
|
||||
export default {
|
||||
components: {
|
||||
ButtonBar,
|
||||
Pagination,
|
||||
pageye,
|
||||
// divAdd,
|
||||
// divInfo,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: "first",
|
||||
activeIndex: "1",
|
||||
dialogVisible: false,
|
||||
btndisabled: false,
|
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看
|
||||
isSearchShow: false,
|
||||
searchxianshitit: '显示查询条件',
|
||||
tableLoading: false,
|
||||
dataList: [],
|
||||
btnList: [{
|
||||
type: 'primary',
|
||||
size: 'small',
|
||||
icon: 'plus',
|
||||
btnKey: 'toAdd',
|
||||
btnLabel: '打到零拣'
|
||||
},
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toPrintBill',
|
||||
// btnLabel: '改承运商'
|
||||
// },
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toBuild',
|
||||
// btnLabel: '生产电子面单'
|
||||
// },
|
||||
{
|
||||
type: 'info',
|
||||
size: 'small',
|
||||
icon: 'cross',
|
||||
btnKey: 'doClose',
|
||||
btnLabel: '关闭'
|
||||
}
|
||||
],
|
||||
queryParams: {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
},
|
||||
sids: [],
|
||||
selectionList: [],
|
||||
billingTypeList: [],
|
||||
outboundTypeList: [{
|
||||
sid: "1",
|
||||
name: "销售出库"
|
||||
}],
|
||||
from: {
|
||||
detailsList: [],
|
||||
operationList: []
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$refs['btnbar'].setButtonList(this.btnList)
|
||||
},
|
||||
created() {
|
||||
this.init()
|
||||
this.loadList()
|
||||
},
|
||||
methods: {
|
||||
|
||||
init() {
|
||||
|
||||
typeValues({
|
||||
type: 'billingType'
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.billingTypeList = res.data
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
|
||||
rowItemClick(row) {
|
||||
console.log("row", row);
|
||||
this.rowItemSid = row.sid
|
||||
|
||||
if (this.rowItemSid == '') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
showClose: true,
|
||||
message: '暂无数据'
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
req.init({
|
||||
sid: row.sid
|
||||
}).then((resp) => {
|
||||
this.from = resp.data
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
// this.handleSelect(this.activeIndex)
|
||||
},
|
||||
|
||||
handleSelect(val) {
|
||||
console.log("val", val);
|
||||
this.activeIndex = val
|
||||
},
|
||||
|
||||
selectionLineChangeHandle(val) {
|
||||
console.log("val", val);
|
||||
|
||||
this.selectionList = val
|
||||
const aa = []
|
||||
val.forEach(element => {
|
||||
aa.push(element.sid)
|
||||
})
|
||||
this.sids = aa
|
||||
|
||||
},
|
||||
// 搜索条件效果
|
||||
clicksearchShow() {
|
||||
this.isSearchShow = !this.isSearchShow
|
||||
if (this.isSearchShow) {
|
||||
this.searchxianshitit = '隐藏查询条件'
|
||||
} else {
|
||||
this.searchxianshitit = '显示查询条件'
|
||||
}
|
||||
},
|
||||
btnHandle(btnKey) {
|
||||
switch (btnKey) {
|
||||
case 'toAdd':
|
||||
this.toAdd()
|
||||
break
|
||||
case 'toPrintBill':
|
||||
this.toPrintBill()
|
||||
break
|
||||
case 'toPrintCode':
|
||||
this.toPrintCode()
|
||||
break
|
||||
case 'toBuild':
|
||||
this.toBuild()
|
||||
break
|
||||
case 'doClose':
|
||||
this.doClose()
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
},
|
||||
loadList() {
|
||||
this.tableLoading = true
|
||||
this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.queryParams.params.menuUrl = this.$route.path
|
||||
req.listPage(this.queryParams).then((resp) => {
|
||||
this.tableLoading = false
|
||||
if (resp.success) {
|
||||
const data = resp.data
|
||||
this.queryParams.total = data.total
|
||||
this.dataList = data.records
|
||||
this.rowItemClick(this.dataList[0])
|
||||
} else {
|
||||
// 根据resp.code进行异常情况处理
|
||||
this.dataList = []
|
||||
this.queryParams.total = 0
|
||||
}
|
||||
}).catch(() => {
|
||||
this.tableLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
// 序号
|
||||
indexMethod(index) {
|
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
|
||||
var pageindex = index + 1 + pagestart
|
||||
return pageindex
|
||||
},
|
||||
dosearch() {
|
||||
this.queryParams.current = 1
|
||||
this.loadList()
|
||||
},
|
||||
resetQuery() {
|
||||
this.queryParams = {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
}
|
||||
this.loadList()
|
||||
},
|
||||
toAdd() {
|
||||
|
||||
this.dialogParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.dialogParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.dialogParams.params.menuUrl = this.$route.path
|
||||
req.getReservationBill(this.dialogParams).then((resp) => {
|
||||
console.log("rgetReservationBill>>>>>", resp)
|
||||
if (resp.success) {
|
||||
this.billList = resp.data.records
|
||||
this.dialogVisible = true
|
||||
}
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
},
|
||||
toPrintBill() {
|
||||
if (this.selectionList.length != 1) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "请选择一条数据。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (this.selectionList[0].billState == '新建') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "此记录未完成,不可操作。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
this.viewState = 5
|
||||
this.$refs['divAddupShelfRecord'].showEdit(this.selectionList[0])
|
||||
},
|
||||
toPrintCode(row) {
|
||||
this.viewState = 3
|
||||
this.$refs['divadd'].showEdit(row)
|
||||
|
||||
},
|
||||
toBuild(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showEdit(row)
|
||||
},
|
||||
doClose() {
|
||||
this.$store.dispatch('tagsView/delView', this.$route)
|
||||
this.$router.go(-1)
|
||||
},
|
||||
toRelevancy(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showAdd(row)
|
||||
},
|
||||
resetState() {
|
||||
this.viewState = 1
|
||||
},
|
||||
saveInvoice() {
|
||||
|
||||
},
|
||||
chooseGoods() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/deep/ .el-form-item__error {
|
||||
margin-left: 120px !important;
|
||||
}
|
||||
|
||||
.must {
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.span-sty {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.addinputInfo {
|
||||
margin-left: 80px !important;
|
||||
}
|
||||
|
||||
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
|
||||
margin-left: 80px !important;
|
||||
width: calc(100% - 75px);
|
||||
}
|
||||
|
||||
.first_row {
|
||||
border-top: 1px solid #E0E3EB;
|
||||
}
|
||||
|
||||
.titleOne {
|
||||
padding: 7px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-menu-item.is-active {
|
||||
background-color: #3370ff !important;
|
||||
color: #fff;
|
||||
|
||||
span {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.el-submenu__title.is-active {
|
||||
background: #1c88cf !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
</style>
|
||||
649
src/views/outStorage/zeroPicking/index.vue
Normal file
649
src/views/outStorage/zeroPicking/index.vue
Normal file
@@ -0,0 +1,649 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<div v-show="viewState == 1">
|
||||
<button-bar ref="btnbar" view-title="待分配管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
|
||||
<div class="main-content">
|
||||
<div class="searchcon">
|
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow">
|
||||
{{ searchxianshitit }}
|
||||
</el-button>
|
||||
<div v-show="isSearchShow" class="search">
|
||||
<el-form :inline="true" class="tab-header">
|
||||
<el-form-item label="外部单号">
|
||||
<el-input v-model="queryParams.params.externalOrderNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="承运商">
|
||||
<el-input v-model="queryParams.params.carrier" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="运单号">
|
||||
<el-input v-model="queryParams.params.waybillNumber" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="买家">
|
||||
<el-input v-model="queryParams.params.buyer" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号">
|
||||
<el-input v-model="queryParams.params.mobile" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="详细地址">
|
||||
<el-input v-model="queryParams.params.address" placeholder="" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="出库类型">
|
||||
<el-select v-model="queryParams.params.outboundType" placeholder="请选择" style="width: 200px;">
|
||||
<el-option v-for="(item,i) in outboundTypeList" :key="i" :label="item.name" :value="item.sid">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="下单时间">
|
||||
<el-date-picker v-model="queryParams.params.orderTimeStart" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>至
|
||||
<el-date-picker v-model="queryParams.params.orderTimeEnd" type="date" placeholder="选择日期"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="btn" style="text-align: center;">
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start 项目列表头部 -->
|
||||
<div class="listtop">
|
||||
<div class="tit">待分配列表</div>
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div>
|
||||
<!-- End 项目列表头部 -->
|
||||
<!-- Start 项目列表 -->
|
||||
<div class="">
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
|
||||
@selection-change="selectionLineChangeHandle" @row-click="rowItemClick">
|
||||
<el-table-column fixed width="50" type="selection" align="center" />
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="externalState" width="100" label="外部状态" align="center" />
|
||||
<el-table-column prop="billNo" width="120" label="订单号" align="center" />
|
||||
<el-table-column prop="externalOrderNumber" width="120" label="外部单号" align="center" />
|
||||
<el-table-column prop="onlineOrderNumber" width="120" label="线上订单号" align="center" />
|
||||
<el-table-column prop="paymentTime" width="160" label="付款时间" align="center" />
|
||||
<el-table-column prop="outboundType" width="120" label="出库类型" align="center" />
|
||||
<el-table-column prop="inventoryStatus" width="120" label="库存状态" align="center" />
|
||||
<el-table-column prop="shipper" width="100" label="货主" align="center" />
|
||||
<el-table-column prop="carrier" width="120" label="承运商" align="center" />
|
||||
<el-table-column prop="waybillNumber" width="120" label="运单号" align="center" />
|
||||
<el-table-column prop="deliveryMethod" width="100" label="配送方式" align="center" />
|
||||
<el-table-column prop="buyer" width="100" label="买家" align="center" />
|
||||
<el-table-column prop="consignee" width="100" label="收货人" align="center" />
|
||||
<el-table-column prop="address" width="200" label="详细地址" align="center" />
|
||||
<el-table-column prop="mobile" width="100" label="手机号" align="center" />
|
||||
<el-table-column prop="actualPayment" width="80" label="实付" align="center" />
|
||||
<el-table-column prop="discount" width="80" label="优惠" align="center" />
|
||||
<el-table-column prop="freight" min-width="80" label="运费" align="center" />
|
||||
<el-table-column prop="weight" width="80" label="重量" align="center" />
|
||||
<el-table-column prop="weightEstimation" width="80" label="估重" align="center" />
|
||||
<el-table-column prop="volume" width="80" label="体积" align="center" />
|
||||
<el-table-column prop="quantity" width="100" label="商品总数" align="center" />
|
||||
<el-table-column prop="orderTime" width="160" label="下单时间" align="center" />
|
||||
<el-table-column prop="deliveryTime" width="160" label="到货时间" align="center" />
|
||||
<el-table-column prop="latestDeliveryTime" width="160" label="最晚发货时间" align="center" />
|
||||
|
||||
</el-table>
|
||||
</div>
|
||||
<!-- End 项目列表 -->
|
||||
<!-- <div class="pages">
|
||||
<div class="tit" /> -->
|
||||
<!-- 翻页 -->
|
||||
<!-- <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
|
||||
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
|
||||
</div> -->
|
||||
|
||||
<!-- 列表底部信息 -->
|
||||
<div class="">
|
||||
<el-tabs v-model="activeName" type="border-card">
|
||||
<el-tab-pane name="first">
|
||||
<span slot="label">订单明细(共: {{from.detailsList.length}} 笔)</span>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" />
|
||||
<el-table-column prop="barCode" label="商品条码" align="center" />
|
||||
<el-table-column prop="unit" label="单位" align="center" />
|
||||
<el-table-column prop="price" label="单价" align="center" />
|
||||
<el-table-column prop="orderCount" label="数量" align="center" />
|
||||
<el-table-column prop="actualPrice" label="应收" align="center" />
|
||||
<el-table-column prop="salesAmount" label="实际成交单价" align="center" />
|
||||
<el-table-column prop="serialNumber" label="销售金额" align="center" />
|
||||
<el-table-column prop="batchNumber" label="序列号" align="center" />
|
||||
<el-table-column prop="reack" label="库位" align="center" />
|
||||
<el-table-column prop="batchNumber" label="指定批次号" align="center" />
|
||||
<el-table-column prop="dateOfManufacture" label="指定生产日期" align="center" />
|
||||
<el-table-column prop="expirationDate" label="指定过期日期" align="center" />
|
||||
<el-table-column prop="batchExpansion" label="指定批次扩展属性" align="center" />
|
||||
<el-table-column prop="remarks" label="明细备注" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="two" label="库位分配">
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="three" label="收件地址">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">收货人</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.consignee }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">固话</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.fixedLine }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">手机号</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.mobile }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">省</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.province }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">市</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.city }}</span></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">县</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.county }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">详细地址</div>
|
||||
<el-form-item> <span class="addinputInfo">{{ from.address }}</span></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="four" label="发票信息">
|
||||
|
||||
<div style="display: flex;flex-direction: row;">
|
||||
|
||||
<div style="flex: 1;">
|
||||
<el-form ref="consignee" :model="from" class="formaddcopy02" style="margin-top: -10px;">
|
||||
<el-row style="border-top: 1px solid #E0E3EB">
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票类型</div>
|
||||
<el-select v-model="from.billState" placeholder="请选择" class="addinputInfo addinputw">
|
||||
<el-option v-for="(item,i) in billingTypeList" :key="item.dictKey" :label="item.dictValue"
|
||||
:value="item.dictKey">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票方</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">抬头</div>
|
||||
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">开票总金额</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">税号</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<div class="span-sty">发票备注</div>
|
||||
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable
|
||||
class="addinputInfo addinputw" /></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<div class="span-sty">内容类型</div>
|
||||
<el-form-item> <el-radio-group v-model="from.state" size="small" class="addinputInfo addinputw">
|
||||
<el-radio :label="2">发票商品</el-radio>
|
||||
<el-radio :label="3">自定义明细</el-radio>
|
||||
</el-radio-group></el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="text-align: center;margin-top: 5px">
|
||||
<el-button type="primary" size="small" @click="saveInvoice">保存</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
<div style="flex: 1;" v-show="from.state==3">
|
||||
<div style="margin-bottom: 5px">
|
||||
<el-button type="primary" size="small" @click="chooseGoods">选择商品</el-button>
|
||||
</div>
|
||||
<el-table :data="from.detailsList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
|
||||
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
|
||||
<el-table-column prop="specValue" label="规格" align="center" />
|
||||
<el-table-column prop="remarks" label="库位编码" align="center" />
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="five" label="备注/留言">
|
||||
<div style="display: flex;flex-direction: row;justify-content: flex-start;">
|
||||
<div style="width: 300px;">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">买家留言</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 15px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">线上备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 300px;margin-left: 5px">
|
||||
<div><el-divider direction="vertical"></el-divider><span style="font-weight: bold;">系统备注</span></div>
|
||||
<div style="background-color: #f5f6f7;margin-top: 10px;min-height: 200px">
|
||||
<div style="margin-left: 10px">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="six" label="操作记录">
|
||||
<el-table :data="from.operationList" border style="width: 100%">
|
||||
<el-table-column width="60" label="序号" type="index" :index="indexMethod" align="center" />
|
||||
<el-table-column prop="createTime" label="操作时间" width="250" align="center" />
|
||||
<el-table-column prop="userName" label="操作账号" width="180" align="center" />
|
||||
<el-table-column prop="content" label="操作内容" align="center" />
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
|
||||
</el-tabs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import req from '@/api/outStorage/outStorage.js'
|
||||
import ButtonBar from '@/components/ButtonBar'
|
||||
import Pagination from '@/components/pagination'
|
||||
import pageye from '@/components/pagination/pageye'
|
||||
// import divAdd from './inStorageAdd.vue'
|
||||
// import divInfo from './inStorageInfo.vue'
|
||||
import {
|
||||
// getTypeValueList,
|
||||
typeValues,
|
||||
choiceSupplierInfo
|
||||
} from '@/api/Common/dictcommons'
|
||||
export default {
|
||||
components: {
|
||||
ButtonBar,
|
||||
Pagination,
|
||||
pageye,
|
||||
// divAdd,
|
||||
// divInfo,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: "first",
|
||||
activeIndex: "1",
|
||||
dialogVisible: false,
|
||||
btndisabled: false,
|
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看
|
||||
isSearchShow: false,
|
||||
searchxianshitit: '显示查询条件',
|
||||
tableLoading: false,
|
||||
dataList: [],
|
||||
btnList: [{
|
||||
type: 'primary',
|
||||
size: 'small',
|
||||
icon: 'plus',
|
||||
btnKey: 'toAdd',
|
||||
btnLabel: '打到零拣'
|
||||
},
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toPrintBill',
|
||||
// btnLabel: '改承运商'
|
||||
// },
|
||||
// {
|
||||
// type: 'success',
|
||||
// size: 'small',
|
||||
// icon: 'export',
|
||||
// btnKey: 'toBuild',
|
||||
// btnLabel: '生产电子面单'
|
||||
// },
|
||||
{
|
||||
type: 'info',
|
||||
size: 'small',
|
||||
icon: 'cross',
|
||||
btnKey: 'doClose',
|
||||
btnLabel: '关闭'
|
||||
}
|
||||
],
|
||||
queryParams: {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
},
|
||||
sids: [],
|
||||
selectionList: [],
|
||||
billingTypeList: [],
|
||||
outboundTypeList: [{
|
||||
sid: "1",
|
||||
name: "销售出库"
|
||||
}],
|
||||
from: {
|
||||
detailsList: [],
|
||||
operationList: []
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$refs['btnbar'].setButtonList(this.btnList)
|
||||
},
|
||||
created() {
|
||||
this.init()
|
||||
this.loadList()
|
||||
},
|
||||
methods: {
|
||||
|
||||
init() {
|
||||
|
||||
typeValues({
|
||||
type: 'billingType'
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.billingTypeList = res.data
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
|
||||
rowItemClick(row) {
|
||||
console.log("row", row);
|
||||
this.rowItemSid = row.sid
|
||||
|
||||
if (this.rowItemSid == '') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
showClose: true,
|
||||
message: '暂无数据'
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
req.init({
|
||||
sid: row.sid
|
||||
}).then((resp) => {
|
||||
this.from = resp.data
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
// this.handleSelect(this.activeIndex)
|
||||
},
|
||||
|
||||
handleSelect(val) {
|
||||
console.log("val", val);
|
||||
this.activeIndex = val
|
||||
},
|
||||
|
||||
selectionLineChangeHandle(val) {
|
||||
console.log("val", val);
|
||||
|
||||
this.selectionList = val
|
||||
const aa = []
|
||||
val.forEach(element => {
|
||||
aa.push(element.sid)
|
||||
})
|
||||
this.sids = aa
|
||||
|
||||
},
|
||||
// 搜索条件效果
|
||||
clicksearchShow() {
|
||||
this.isSearchShow = !this.isSearchShow
|
||||
if (this.isSearchShow) {
|
||||
this.searchxianshitit = '隐藏查询条件'
|
||||
} else {
|
||||
this.searchxianshitit = '显示查询条件'
|
||||
}
|
||||
},
|
||||
btnHandle(btnKey) {
|
||||
switch (btnKey) {
|
||||
case 'toAdd':
|
||||
this.toAdd()
|
||||
break
|
||||
case 'toPrintBill':
|
||||
this.toPrintBill()
|
||||
break
|
||||
case 'toPrintCode':
|
||||
this.toPrintCode()
|
||||
break
|
||||
case 'toBuild':
|
||||
this.toBuild()
|
||||
break
|
||||
case 'doClose':
|
||||
this.doClose()
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
},
|
||||
loadList() {
|
||||
this.tableLoading = true
|
||||
this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.queryParams.params.menuUrl = this.$route.path
|
||||
req.listPage(this.queryParams).then((resp) => {
|
||||
this.tableLoading = false
|
||||
if (resp.success) {
|
||||
const data = resp.data
|
||||
this.queryParams.total = data.total
|
||||
this.dataList = data.records
|
||||
this.rowItemClick(this.dataList[0])
|
||||
} else {
|
||||
// 根据resp.code进行异常情况处理
|
||||
this.dataList = []
|
||||
this.queryParams.total = 0
|
||||
}
|
||||
}).catch(() => {
|
||||
this.tableLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
// 序号
|
||||
indexMethod(index) {
|
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
|
||||
var pageindex = index + 1 + pagestart
|
||||
return pageindex
|
||||
},
|
||||
dosearch() {
|
||||
this.queryParams.current = 1
|
||||
this.loadList()
|
||||
},
|
||||
resetQuery() {
|
||||
this.queryParams = {
|
||||
current: 1,
|
||||
size: 10,
|
||||
total: 0,
|
||||
params: {
|
||||
"billNo": "",
|
||||
"externalOrderNumber": "",
|
||||
"onlineOrderNumber": "",
|
||||
"buyer": "",
|
||||
"waybillNumber": "",
|
||||
"platform": "",
|
||||
"carrier": "",
|
||||
"mobile": "",
|
||||
"outboundType": "",
|
||||
"address": "",
|
||||
"orderTimeStart": "",
|
||||
"orderTimeEnd": "",
|
||||
"menuUrl": "",
|
||||
"orgPath": "",
|
||||
"userSid": "",
|
||||
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库
|
||||
}
|
||||
}
|
||||
this.loadList()
|
||||
},
|
||||
toAdd() {
|
||||
|
||||
this.dialogParams.params.userSid = window.sessionStorage.getItem('userSid')
|
||||
this.dialogParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
|
||||
this.dialogParams.params.menuUrl = this.$route.path
|
||||
req.getReservationBill(this.dialogParams).then((resp) => {
|
||||
console.log("rgetReservationBill>>>>>", resp)
|
||||
if (resp.success) {
|
||||
this.billList = resp.data.records
|
||||
this.dialogVisible = true
|
||||
}
|
||||
}).catch(() => {})
|
||||
|
||||
|
||||
},
|
||||
toPrintBill() {
|
||||
if (this.selectionList.length != 1) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "请选择一条数据。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (this.selectionList[0].billState == '新建') {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: "此记录未完成,不可操作。",
|
||||
showClose: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
this.viewState = 5
|
||||
this.$refs['divAddupShelfRecord'].showEdit(this.selectionList[0])
|
||||
},
|
||||
toPrintCode(row) {
|
||||
this.viewState = 3
|
||||
this.$refs['divadd'].showEdit(row)
|
||||
|
||||
},
|
||||
toBuild(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showEdit(row)
|
||||
},
|
||||
doClose() {
|
||||
this.$store.dispatch('tagsView/delView', this.$route)
|
||||
this.$router.go(-1)
|
||||
},
|
||||
toRelevancy(row) {
|
||||
this.viewState = 4
|
||||
this.$refs['divinfo'].showAdd(row)
|
||||
},
|
||||
resetState() {
|
||||
this.viewState = 1
|
||||
},
|
||||
saveInvoice() {
|
||||
|
||||
},
|
||||
chooseGoods() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/deep/ .el-form-item__error {
|
||||
margin-left: 120px !important;
|
||||
}
|
||||
|
||||
.must {
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.span-sty {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.addinputInfo {
|
||||
margin-left: 80px !important;
|
||||
}
|
||||
|
||||
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
|
||||
margin-left: 80px !important;
|
||||
width: calc(100% - 75px);
|
||||
}
|
||||
|
||||
.first_row {
|
||||
border-top: 1px solid #E0E3EB;
|
||||
}
|
||||
|
||||
.titleOne {
|
||||
padding: 7px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-menu-item.is-active {
|
||||
background-color: #3370ff !important;
|
||||
color: #fff;
|
||||
|
||||
span {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.el-submenu__title.is-active {
|
||||
background: #1c88cf !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
</style>
|
||||
@@ -92,12 +92,10 @@
|
||||
<td>
|
||||
<!-- <el-input v-model="form.pname" :disabled="true" style="width:300px" /> -->
|
||||
|
||||
<el-select v-model="form.pname" placeholder="请选择" style="width:300px"
|
||||
:disabled="form.pname!=''&&form.psid!=''">
|
||||
<el-select v-model="form.pname" placeholder="请选择" style="width:300px" :disabled="true">
|
||||
<el-option hidden :key="form.psid" :label="form.pname" :value="form.pname"></el-option>
|
||||
<el-tree :data="treedata" ref="Tree" show-checkbox accordion node-key="sid"
|
||||
:default-checked-keys="checkedId" :default-expand-all='true' :check-strictly='true'
|
||||
:props="defaultProps" @check-change="checkchange" @node-click="departmentClick">
|
||||
<el-tree :data="treedata" ref="Tree" accordion node-key="sid" :default-checked-keys="checkedId"
|
||||
:default-expand-all='true' :check-strictly='true' :props="defaultProps">
|
||||
</el-tree>
|
||||
</el-select>
|
||||
|
||||
@@ -106,7 +104,7 @@
|
||||
<tr>
|
||||
<td>类型分类</td>
|
||||
<td>
|
||||
<el-radio-group v-model="editMenuType" @change="menuTypeChangeRadio" style="width:300px">
|
||||
<el-radio-group v-model="editMenuType" @change="menuTypeChangeRadio">
|
||||
<el-radio :label="'0'">目录</el-radio>
|
||||
<el-radio :label="'1'">菜单</el-radio>
|
||||
<el-radio :label="'2'">按钮</el-radio>
|
||||
@@ -116,43 +114,43 @@
|
||||
<tr>
|
||||
<td>菜单名称</td>
|
||||
<td>
|
||||
<el-input v-model="form.name" style="width:300px" />
|
||||
<el-input v-model="form.name" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>路由名称</td>
|
||||
<td>
|
||||
<el-input v-model="form.menuUrl" style="width:300px" />
|
||||
<el-input v-model="form.menuUrl" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>路由路径</td>
|
||||
<td>
|
||||
<el-input v-model="form.pageUrl" style="width:300px" />
|
||||
<el-input v-model="form.pageUrl" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>菜单图片</td>
|
||||
<td>
|
||||
<el-input v-model="form.iconUrl" style="width:300px" />
|
||||
<el-input v-model="form.iconUrl" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>组件路径</td>
|
||||
<td>
|
||||
<el-input v-model="form.pageName" style="width:300px" />
|
||||
<el-input v-model="form.pageName" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr v-show="editMenuType=='2'">
|
||||
<td>权限标识</td>
|
||||
<td>
|
||||
<el-input v-model="form.cid" style="width:300px" />
|
||||
<el-input v-model="form.cid" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>是否手机端权限</td>
|
||||
<td>
|
||||
<el-radio-group v-model="editPhoneFunction" @change="changeRadio4" style="width:300px">
|
||||
<el-radio-group v-model="editPhoneFunction" @change="changeRadio4">
|
||||
<el-radio :label="'0'">否</el-radio>
|
||||
<el-radio :label="'1'">是</el-radio>
|
||||
</el-radio-group>
|
||||
@@ -161,7 +159,7 @@
|
||||
<tr>
|
||||
<td>是否可见</td>
|
||||
<td>
|
||||
<el-radio-group v-model="editShow" @change="changeRadio" style="width:300px">
|
||||
<el-radio-group v-model="editShow" @change="changeRadio">
|
||||
<el-radio :label="'0'">否</el-radio>
|
||||
<el-radio :label="'1'">是</el-radio>
|
||||
</el-radio-group>
|
||||
@@ -170,7 +168,7 @@
|
||||
<tr>
|
||||
<td>排序号</td>
|
||||
<td>
|
||||
<el-input v-model="form.sortNo" style="width:300px" />
|
||||
<el-input v-model="form.sortNo" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -210,14 +208,13 @@
|
||||
:props="defaultProps" @check-change="checkchange">
|
||||
</el-tree> -->
|
||||
|
||||
<el-select v-model="form.pname" placeholder="请选择" style="width:300px"
|
||||
:disabled="form.pname!=''&&form.psid!=''">
|
||||
<el-select v-model="form.pname" placeholder="请选择" style="width:300px" ref="treeSelect" :disabled="disabled">
|
||||
<el-option hidden :key="form.psid" :label="form.pname" :value="form.pname"></el-option>
|
||||
<el-tree :data="treedata" ref="Tree" show-checkbox accordion node-key="sid"
|
||||
:default-checked-keys="checkedId" :default-expand-all='true' :check-strictly='true'
|
||||
:props="defaultProps" @check-change="checkchange">
|
||||
<el-tree :data="treedata" ref="Tree" accordion node-key="sid" :default-checked-keys="checkedId"
|
||||
:default-expand-all='true' :check-strictly='true' :props="defaultProps" @node-click="nodeClick">
|
||||
</el-tree>
|
||||
</el-select>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -320,6 +317,7 @@
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
disabled: false,
|
||||
activeName: 'roleList',
|
||||
editDialog: false,
|
||||
dialogTitle: '',
|
||||
@@ -330,6 +328,7 @@
|
||||
isShow: '1',
|
||||
menuName: '',
|
||||
menuUrl: '',
|
||||
menuType: "0",
|
||||
pageAliasName: '',
|
||||
pageName: '',
|
||||
pageUrl: '',
|
||||
@@ -338,9 +337,9 @@
|
||||
remarks: '',
|
||||
sortNo: 0,
|
||||
cid: '',
|
||||
sourceName: 'wms',
|
||||
sourceName: '',
|
||||
phoneFunction: "0",
|
||||
sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa33'
|
||||
sourceSid: ''
|
||||
},
|
||||
tableData: [],
|
||||
page: {
|
||||
@@ -350,8 +349,8 @@
|
||||
params: {
|
||||
name: '',
|
||||
psid: '',
|
||||
sourceName: 'wms',
|
||||
sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa33'
|
||||
// sourceName: 'wms',
|
||||
// sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa33'
|
||||
}
|
||||
},
|
||||
rank: '1',
|
||||
@@ -382,35 +381,21 @@
|
||||
// })
|
||||
},
|
||||
methods: {
|
||||
departmentClick(data) {
|
||||
console.log("departmentClick", data);
|
||||
this.form.psid = data.sid
|
||||
this.form.pname = data.name
|
||||
this.$refs.Tree.visible = false
|
||||
},
|
||||
checkchange(data, checked) {
|
||||
console.log("checkchange", data);
|
||||
console.log("checkchange", checked);
|
||||
|
||||
|
||||
if (checked) {
|
||||
|
||||
if (data.sid == 'd936f1ba-03c3-11ec-bf08-48452053aa33') {
|
||||
this.form.psid = '0'
|
||||
this.form.pname = '顶级菜单'
|
||||
} else {
|
||||
this.form.psid = data.psid
|
||||
this.form.pname = data.pname
|
||||
}
|
||||
let arr = []
|
||||
arr = [data.sid];
|
||||
this.$refs.Tree.setCheckedKeys(arr);
|
||||
|
||||
console.log("checkchange", this.form.pname);
|
||||
console.log("checkchange", this.form.psid);
|
||||
|
||||
return;
|
||||
nodeClick(val) {
|
||||
console.log("nodeClick", val);
|
||||
if (val.isSource == '1') {
|
||||
// 选择的是资源 最顶级的
|
||||
this.form.psid = '0'
|
||||
this.form.pname = '顶级菜单'
|
||||
} else {
|
||||
this.form.psid = val.sid
|
||||
this.form.pname = val.name
|
||||
}
|
||||
this.form.sourceName = val.sourceName
|
||||
this.form.sourceSid = val.sourceSid
|
||||
|
||||
this.$refs.treeSelect.visible = false
|
||||
|
||||
},
|
||||
|
||||
@@ -469,46 +454,76 @@
|
||||
})
|
||||
},
|
||||
handleClick(tab, event) {
|
||||
console.log("handleClick", event);
|
||||
if (tab.name == 'addrole') {
|
||||
this.form = {}
|
||||
this.dialogTitle = '新增'
|
||||
this.form.isShow = '1'
|
||||
this.form.menuType = '0'
|
||||
// this.form.psid = row.sid || 0
|
||||
this.form.sourceName = 'wms'
|
||||
this.form.sourceSid = 'd936f1ba-03c3-11ec-bf08-48452053aa33'
|
||||
this.form.pname = '顶级菜单'
|
||||
this.form.psid = '0'
|
||||
// this.sourceMenus()
|
||||
// this.$refs.Tree.setCheckedKeys([]);
|
||||
this.form = {
|
||||
pname: '',
|
||||
iconUrl: '',
|
||||
isShow: '1',
|
||||
menuName: '',
|
||||
menuUrl: '',
|
||||
menuType: "0",
|
||||
pageAliasName: '',
|
||||
pageName: '',
|
||||
pageUrl: '',
|
||||
pageUrlRedirect: '',
|
||||
psid: '',
|
||||
remarks: '',
|
||||
sortNo: 0,
|
||||
cid: '',
|
||||
sourceName: '',
|
||||
phoneFunction: "0",
|
||||
sourceSid: ''
|
||||
}
|
||||
this.disabled = false
|
||||
this.addMenuType = '0'
|
||||
this.editMenuType = '0'
|
||||
this.addPhoneFunction = "0"
|
||||
this.editPhoneFunction = "0"
|
||||
} else {
|
||||
this.getPageList()
|
||||
}
|
||||
},
|
||||
add(row) {
|
||||
|
||||
console.log("editRow22222222222", row);
|
||||
this.form = {
|
||||
pname: row.name,
|
||||
iconUrl: '',
|
||||
isShow: '1',
|
||||
menuName: '',
|
||||
menuUrl: '',
|
||||
menuType: "0",
|
||||
pageAliasName: '',
|
||||
pageName: '',
|
||||
pageUrl: '',
|
||||
pageUrlRedirect: '',
|
||||
psid: row.sid,
|
||||
remarks: '',
|
||||
sortNo: 0,
|
||||
cid: '',
|
||||
sourceName: row.sourceName,
|
||||
phoneFunction: "0",
|
||||
sourceSid: row.sourceSid
|
||||
}
|
||||
this.disabled = true
|
||||
this.dialogTitle = '新增'
|
||||
this.activeName = 'addrole'
|
||||
// if(row == 0){
|
||||
// this.isadd = false
|
||||
// }else{
|
||||
// this.isadd = true
|
||||
// }
|
||||
// this.dialogTitle = '新增'
|
||||
// this.editDialog = true
|
||||
this.form.isShow = '1'
|
||||
this.form.menuType = '0'
|
||||
// this.form.psid = row.sid || 0
|
||||
this.form.pname = row.name
|
||||
this.form.psid = row.sid
|
||||
this.form.sourceName = row.sourceName
|
||||
this.form.sourceSid = row.sourceSid
|
||||
|
||||
if (row.isSource == '1') {
|
||||
this.form.psid = 0
|
||||
this.form.pname = "顶级菜单"
|
||||
} else {
|
||||
this.form.psid = row.sid
|
||||
this.form.pname = row.name
|
||||
}
|
||||
let arr = []
|
||||
arr = [row.sid];
|
||||
this.$refs.Tree.setCheckedKeys(arr);
|
||||
this.addMenuType = '0'
|
||||
this.editMenuType = '0'
|
||||
this.addPhoneFunction = "0"
|
||||
this.editPhoneFunction = "0"
|
||||
// let arr = []
|
||||
// arr = [row.sid];
|
||||
// this.$refs.Tree.setCheckedKeys(arr);
|
||||
|
||||
},
|
||||
editRow(row) {
|
||||
@@ -519,15 +534,14 @@
|
||||
|
||||
this.editShow = this.form.isShow
|
||||
this.editMenuType = this.form.menuType
|
||||
let arr = []
|
||||
arr = [row.sid];
|
||||
this.$refs.Tree.setCheckedKeys(arr);
|
||||
// let arr = []
|
||||
// arr = [row.sid];
|
||||
// this.$refs.Tree.setCheckedKeys(arr);
|
||||
|
||||
// this.form.isShow = 1
|
||||
this.form.pname = row.psid == '0' ? '顶级菜单' : row.pname
|
||||
},
|
||||
save() {
|
||||
|
||||
if (this.form.name == '') {
|
||||
this.$message({
|
||||
message: '菜单名称不能为空',
|
||||
@@ -549,7 +563,6 @@
|
||||
}
|
||||
|
||||
if (this.form.sid) {
|
||||
|
||||
putMenusInfo(this.form).then(res => {
|
||||
this.editDialog = false
|
||||
this.getPageList()
|
||||
|
||||
@@ -33,16 +33,16 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="350px" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button @click="setRole(scope.row)" type="primary" size="mini">
|
||||
<el-button @click="setRole(scope.row)" type="primary" size="mini" v-show="scope.row.accountType!='1'">
|
||||
设置角色
|
||||
</el-button>
|
||||
<el-button @click="initPwd(scope.row)" type="danger" size="mini">
|
||||
初始化密码
|
||||
</el-button>
|
||||
<el-button @click="userinfoChange(scope.row)" type="primary" size="mini">
|
||||
<el-button @click="userinfoChange(scope.row)" type="primary" size="mini" v-show="scope.row.accountType!='1'">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button @click="del(scope.row)" type="danger" size="mini">
|
||||
<el-button @click="del(scope.row)" type="danger" size="mini" v-show="scope.row.accountType!='1'">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
@@ -55,6 +55,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column prop="name" label="姓名" align="center"></el-table-column>
|
||||
<el-table-column prop="roleName" label="角色" align="center"></el-table-column>
|
||||
<el-table-column prop="departmentName" label="部门" align="center"></el-table-column>
|
||||
<!-- <el-table-column label="角色名称" :formatter='sysRoleVosName'></el-table-column> -->
|
||||
<!-- <el-table-column label="角色名称" align="center">
|
||||
<template slot-scope="scope">
|
||||
@@ -560,7 +561,7 @@
|
||||
},
|
||||
// 修改用户信息
|
||||
userinfoChange(row) {
|
||||
row.defaultDeptSid = row.departmentSid
|
||||
row.defaultDeptSid = row.orgSid
|
||||
initUserInfo(row).then(res => {
|
||||
if (res.code == '200') {
|
||||
this.editDialog = true
|
||||
|
||||
Reference in New Issue
Block a user