|
|
@ -1,7 +1,7 @@ |
|
|
|
<template> |
|
|
|
<div class="app-container"> |
|
|
|
<div v-show="viewState == 1"> |
|
|
|
<button-bar ref="btnbar" view-title="待分配管理" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
|
|
|
<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"> |
|
|
@ -13,7 +13,10 @@ |
|
|
|
<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-select v-model="queryParams.params.carrier" placeholder="请选择" style="width: 200px;"> |
|
|
|
<el-option v-for="(item,i) in carrierList" :key="i" :label="item.dictValue" :value="item.dictKey"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="运单号"> |
|
|
|
<el-input v-model="queryParams.params.waybillNumber" placeholder="" clearable /> |
|
|
@ -50,7 +53,7 @@ |
|
|
|
</div> |
|
|
|
<!-- Start 项目列表头部 --> |
|
|
|
<div class="listtop"> |
|
|
|
<div class="tit">待分配列表</div> |
|
|
|
<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> |
|
|
@ -69,8 +72,20 @@ |
|
|
|
<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 label="承运商" align="center" width="150"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-select v-model="scope.row.carrier" placeholder="请选择" @change="selectCarrier(scope.row,$event)"> |
|
|
|
<el-option v-for="(item,i) in carrierList" :key="i" :label="item.dictValue" :value="item.dictKey"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="运单号" align="center" min-width="200"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input ref="" v-model="scope.row.waybillNumber" clearable placeholder="" |
|
|
|
@change="itemWaybillNumber(scope.row)" /> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<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" /> |
|
|
@ -99,73 +114,135 @@ |
|
|
|
|
|
|
|
<!-- 列表底部信息 --> |
|
|
|
<div class=""> |
|
|
|
<el-tabs v-model="activeName" type="border-card"> |
|
|
|
<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="150" label="订单号" align="center" /> |
|
|
|
<el-table-column prop="externalOrderNumber" width="150" label="外部单号" align="center" /> |
|
|
|
<el-table-column prop="onlineOrderNumber" width="150" 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 label="承运商" align="center" width="150"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-select v-model="scope.row.carrier" placeholder="请选择" @change="selectCarrier(scope.row,$event)"> |
|
|
|
<el-option v-for="(item,i) in carrierList" :key="i" :label="item.dictValue" :value="item.dictKey"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="运单号" align="center" min-width="200"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input ref="" v-model="scope.row.waybillNumber" clearable placeholder="" |
|
|
|
@change="itemWaybillNumber(scope.row)" /> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<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="250" label="详细地址" align="center" /> |
|
|
|
<el-table-column prop="mobile" width="120" 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.detailsList.length}} 笔)</span> |
|
|
|
<el-table :data="from.detailsList" border style="width: 100%"> |
|
|
|
<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="goodsSpuName" label="商品名称" width="120" align="center" /> |
|
|
|
<el-table-column prop="goodsSkuCode" label="商品编码" width="120" align="center" /> |
|
|
|
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" /> |
|
|
|
<el-table-column prop="barCode" label="商品条码" align="center" /> |
|
|
|
<el-table-column prop="barCode" label="商品条码" width="120" 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-column prop="salesAmount" label="实际成交单价" width="160" align="center" /> |
|
|
|
<el-table-column prop="salesAmount" label="销售金额" width="160" align="center" /> |
|
|
|
<el-table-column prop="serialNumber" label="序列号" align="center" /> |
|
|
|
<el-table-column label="库位" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div style="color: #1890FF; text-decoration: underline ; cursor:pointer;" |
|
|
|
@click="showStock(scope.row)"> |
|
|
|
{{scope.row.reackState}} |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="batchNumber" label="指定批次号" width="160" align="center" /> |
|
|
|
<el-table-column prop="dateOfManufacture" label="指定生产日期" width="160" align="center" /> |
|
|
|
<el-table-column prop="expirationDate" label="指定过期日期" width="160" align="center" /> |
|
|
|
<el-table-column prop="batchExpansion" label="指定批次扩展属性" width="160" align="center" /> |
|
|
|
<el-table-column prop="remarks" label="明细备注" width="120" align="center" /> |
|
|
|
</el-table> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane name="two" label="库位分配"> |
|
|
|
<el-table :data="from.detailsList" border style="width: 100%"> |
|
|
|
<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="goodsSpuName" 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-column prop="spec" label="规格" align="center" /> |
|
|
|
<el-table-column prop="rackCode" label="库位编码" align="center" /> |
|
|
|
<el-table-column prop="count" label="分配数量" align="center" /> |
|
|
|
</el-table> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane name="three" label="收件地址"> |
|
|
|
<el-form ref="consignee" :model="from" class="formaddcopy02"> |
|
|
|
<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.consignee }}</span></el-form-item> |
|
|
|
<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.fixedLine }}</span></el-form-item> |
|
|
|
<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.mobile }}</span></el-form-item> |
|
|
|
<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.province }}</span></el-form-item> |
|
|
|
<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.city }}</span></el-form-item> |
|
|
|
<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.county }}</span></el-form-item> |
|
|
|
<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.address }}</span></el-form-item> |
|
|
|
<el-form-item> <span class="addinputInfo">{{ from.three.address }}</span></el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
@ -175,11 +252,12 @@ |
|
|
|
<div style="display: flex;flex-direction: row;"> |
|
|
|
|
|
|
|
<div style="flex: 1;"> |
|
|
|
<el-form ref="consignee" :model="from" class="formaddcopy02" style="margin-top: -10px;"> |
|
|
|
<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.billState" placeholder="请选择" class="addinputInfo addinputw"> |
|
|
|
<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> |
|
|
@ -187,39 +265,40 @@ |
|
|
|
</el-col> |
|
|
|
<el-col :span="8"> |
|
|
|
<div class="span-sty">开票方</div> |
|
|
|
<el-form-item> <el-input v-model="from.waybillNumber" placeholder="" clearable |
|
|
|
<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.waybillNumber" placeholder="" clearable |
|
|
|
<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.waybillNumber" placeholder="" clearable |
|
|
|
<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.waybillNumber" placeholder="" clearable |
|
|
|
<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.waybillNumber" placeholder="" clearable |
|
|
|
<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.state" size="small" class="addinputInfo addinputw"> |
|
|
|
<el-radio :label="2">发票商品</el-radio> |
|
|
|
<el-radio :label="3">自定义明细</el-radio> |
|
|
|
<el-form-item> <el-radio-group v-model="from.four.contentType" 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> |
|
|
@ -229,16 +308,22 @@ |
|
|
|
</el-form> |
|
|
|
|
|
|
|
</div> |
|
|
|
<div style="flex: 1;" v-show="from.state==3"> |
|
|
|
<div style="flex: 1;" v-show="from.four.contentType=='2'"> |
|
|
|
<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 :data="from.four.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-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="orderCount" label="数量" align="center" /> |
|
|
|
<el-table-column prop="salesAmount" label="金额" align="center" /> |
|
|
|
</el-table> |
|
|
|
</div> |
|
|
|
|
|
|
@ -270,7 +355,7 @@ |
|
|
|
</div> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane name="six" label="操作记录"> |
|
|
|
<el-table :data="from.operationList" border style="width: 100%"> |
|
|
|
<el-table :data="from.six" 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" /> |
|
|
@ -283,6 +368,50 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-dialog title="选择商品" :visible.sync="dialogVisible" :before-close="handleClose" style="width:100%;"> |
|
|
|
|
|
|
|
<el-table :data="from.first" border style="width: 100%;margin-top: -20px" |
|
|
|
@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="orderCount" label="数量" align="center" /> |
|
|
|
<el-table-column prop="salesAmount" 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> |
|
|
|
|
|
|
|
<el-dialog title="库位分配选择" :visible.sync="dialogVisible2" :before-close="handleClose2" style="width:100%;"> |
|
|
|
|
|
|
|
<el-table :data="goodsStockList" border style="width: 100%;margin-top: -20px;" ref="main"> |
|
|
|
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
|
|
|
<el-table-column prop="warehouseName" label="仓库" align="center" /> |
|
|
|
<el-table-column prop="areaName" label="库区" align="center" /> |
|
|
|
<el-table-column prop="rackName" label="库位" align="center" /> |
|
|
|
<el-table-column prop="rackCode" label="库位编码" align="center" /> |
|
|
|
<el-table-column prop="useCount" label="可用库存" align="center" /> |
|
|
|
<el-table-column label="分配数量" align="center" min-width="200"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input v-model="scope.row.count" clearable placeholder="" |
|
|
|
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" /> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</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="saveData2">确 定</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
@ -309,21 +438,23 @@ |
|
|
|
data() { |
|
|
|
return { |
|
|
|
activeName: "first", |
|
|
|
activeIndex: "1", |
|
|
|
activeIndex: "first", |
|
|
|
dialogVisible: false, |
|
|
|
dialogVisible2: 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: '打到零拣' |
|
|
|
}, |
|
|
|
btnList: [ |
|
|
|
// { |
|
|
|
// type: 'primary', |
|
|
|
// size: 'small', |
|
|
|
// icon: 'plus', |
|
|
|
// btnKey: 'toAdd', |
|
|
|
// btnLabel: '打到零拣' |
|
|
|
// }, |
|
|
|
// { |
|
|
|
// type: 'success', |
|
|
|
// size: 'small', |
|
|
@ -366,20 +497,28 @@ |
|
|
|
"menuUrl": "", |
|
|
|
"orgPath": "", |
|
|
|
"userSid": "", |
|
|
|
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库 |
|
|
|
"billState": "3", //0 待分配 1零拣打单 2待出库 3已出库 |
|
|
|
} |
|
|
|
}, |
|
|
|
sids: [], |
|
|
|
selectionList: [], |
|
|
|
rowItemSid: "", |
|
|
|
billingTypeList: [], |
|
|
|
carrierList: [], |
|
|
|
outboundTypeList: [{ |
|
|
|
sid: "1", |
|
|
|
name: "销售出库" |
|
|
|
}], |
|
|
|
from: { |
|
|
|
detailsList: [], |
|
|
|
operationList: [] |
|
|
|
first: [], |
|
|
|
two: [], |
|
|
|
three: {}, |
|
|
|
four: {}, |
|
|
|
five: {}, |
|
|
|
six: [] |
|
|
|
}, |
|
|
|
goodsList: [], |
|
|
|
goodsStockList: [] |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
@ -402,12 +541,17 @@ |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
typeValues({ |
|
|
|
type: 'carrier' |
|
|
|
}).then((res) => { |
|
|
|
if (res.success) { |
|
|
|
this.carrierList = res.data |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
rowItemClick(row) { |
|
|
|
console.log("row", row); |
|
|
|
this.rowItemSid = row.sid |
|
|
|
}, |
|
|
|
handleClick(table) { |
|
|
|
console.log("handleClick", table.name); |
|
|
|
|
|
|
|
if (this.rowItemSid == '') { |
|
|
|
this.$message({ |
|
|
@ -417,20 +561,82 @@ |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
this.activeIndex = 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(() => {}) |
|
|
|
} |
|
|
|
|
|
|
|
req.init({ |
|
|
|
sid: row.sid |
|
|
|
}).then((resp) => { |
|
|
|
this.from = resp.data |
|
|
|
}).catch(() => {}) |
|
|
|
}, |
|
|
|
|
|
|
|
rowItemClick(row) { |
|
|
|
console.log("row", row); |
|
|
|
|
|
|
|
// this.handleSelect(this.activeIndex) |
|
|
|
}, |
|
|
|
if (row.sid == '') { |
|
|
|
this.$message({ |
|
|
|
type: 'warning', |
|
|
|
showClose: true, |
|
|
|
message: '暂无数据' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
this.rowItemSid = row.sid |
|
|
|
var table = { |
|
|
|
name: this.activeIndex |
|
|
|
} |
|
|
|
this.handleClick(table) |
|
|
|
|
|
|
|
handleSelect(val) { |
|
|
|
console.log("val", val); |
|
|
|
this.activeIndex = val |
|
|
|
}, |
|
|
|
|
|
|
|
selectionLineChangeHandle(val) { |
|
|
@ -486,6 +692,14 @@ |
|
|
|
this.queryParams.total = data.total |
|
|
|
this.dataList = data.records |
|
|
|
this.rowItemClick(this.dataList[0]) |
|
|
|
this.from = { |
|
|
|
first: [], |
|
|
|
two: [], |
|
|
|
three: {}, |
|
|
|
four: {}, |
|
|
|
five: {}, |
|
|
|
six: [] |
|
|
|
} |
|
|
|
} else { |
|
|
|
// 根据resp.code进行异常情况处理 |
|
|
|
this.dataList = [] |
|
|
@ -527,24 +741,49 @@ |
|
|
|
"menuUrl": "", |
|
|
|
"orgPath": "", |
|
|
|
"userSid": "", |
|
|
|
"billState": "0", //0 待分配 1零拣打单 2待出库 3已出库 |
|
|
|
"billState": "3", //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(() => {}) |
|
|
|
|
|
|
|
if (this.sids.length > 0) { |
|
|
|
const tip = '请确认是否提交所选 ' + this.sids.length + ' 条记录?' |
|
|
|
this.$confirm(tip, '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
const loading = this.$loading({ |
|
|
|
lock: true, |
|
|
|
text: 'Loading', |
|
|
|
spinner: 'el-icon-loading', |
|
|
|
background: 'rgba(0, 0, 0, 0.7)' |
|
|
|
}) |
|
|
|
req.toBePickOut(this.sids).then((resp) => { |
|
|
|
loading.close() |
|
|
|
if (resp.success) { |
|
|
|
this.$message({ |
|
|
|
type: 'success', |
|
|
|
message: resp.msg, |
|
|
|
showClose: true |
|
|
|
}) |
|
|
|
this.loadList() |
|
|
|
} else { |
|
|
|
// 根据resp.code进行异常情况处理 |
|
|
|
} |
|
|
|
}).catch(e => { |
|
|
|
loading.close() |
|
|
|
}) |
|
|
|
}).catch(() => {}) |
|
|
|
} else { |
|
|
|
this.$message({ |
|
|
|
type: 'warning', |
|
|
|
showClose: true, |
|
|
|
message: '请至少选择一条记录进行操作' |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
}, |
|
|
|
toPrintBill() { |
|
|
@ -589,13 +828,128 @@ |
|
|
|
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) |
|
|
|
}, |
|
|
|
selectCarrier(row, val) { |
|
|
|
console.log("selectCarrier", val); |
|
|
|
|
|
|
|
const choose = this.carrierList.filter((item) => item.dictKey == val) |
|
|
|
console.log('>>>>>>>>>selectCarrier', choose) |
|
|
|
row.carrier = choose[0].dictValue |
|
|
|
row.carrierSid = choose[0].dictKey |
|
|
|
|
|
|
|
var query = { |
|
|
|
sid: row.sid, |
|
|
|
carrier: row.carrier, |
|
|
|
carrierSid: row.carrierSid, |
|
|
|
userSid: window.sessionStorage.getItem('userSid') |
|
|
|
} |
|
|
|
req.updateCarrier(query).then((res) => {}) |
|
|
|
}, |
|
|
|
itemWaybillNumber(row) { |
|
|
|
console.log("itemWaybillNumber", row); |
|
|
|
|
|
|
|
var query = { |
|
|
|
sid: row.sid, |
|
|
|
waybillNumber: row.waybillNumber, |
|
|
|
userSid: window.sessionStorage.getItem('userSid') |
|
|
|
} |
|
|
|
req.updateWaybillNumber(query).then((res) => {}) |
|
|
|
|
|
|
|
}, |
|
|
|
showStock(row) { |
|
|
|
console.log("showStock", row); |
|
|
|
|
|
|
|
req.selAvailableBySkuSid({ |
|
|
|
skuSid: row.sid, |
|
|
|
sourceBillSid: this.rowItemSid, |
|
|
|
orgSid: window.sessionStorage.getItem('orgSid') |
|
|
|
}).then((res) => { |
|
|
|
console.log("selAvailableBySkuSid", res); |
|
|
|
|
|
|
|
if (res.success) { |
|
|
|
this.goodsStockList = res.data |
|
|
|
this.dialogVisible2 = true |
|
|
|
|
|
|
|
} else { |
|
|
|
// 根据resp.code进行异常情况处理 |
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
}, |
|
|
|
handleClose2() { |
|
|
|
this.dialogVisible2 = false |
|
|
|
}, |
|
|
|
saveData2() { |
|
|
|
console.log("saveData2", this.goodsStockList); |
|
|
|
|
|
|
|
var goodsStocks = [] |
|
|
|
|
|
|
|
for (var i = 0; i < this.goodsStockList.length; i++) { |
|
|
|
|
|
|
|
var item = this.goodsStockList[i] |
|
|
|
|
|
|
|
if (Number(item.count) > 0) { |
|
|
|
|
|
|
|
goodsStocks.push({ |
|
|
|
"sid": item.locationSid, |
|
|
|
"sourceBillSid": this.rowItemSid, |
|
|
|
"goodsSkuSid": item.goodsSkuSid, |
|
|
|
"goodsSpuName": item.goodsSpuName, |
|
|
|
"goodsSpuTitle": "", |
|
|
|
"goodsSkuCode": '', |
|
|
|
"count": item.count, |
|
|
|
"rackSid": item.rackSid, |
|
|
|
"rackCode": item.rackCode, |
|
|
|
"inventorySid": item.sid, |
|
|
|
"initialCount": item.initialCount |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
req.saveSelAvailable(goodsStocks).then((res) => { |
|
|
|
console.log("saveSelAvailable", res); |
|
|
|
|
|
|
|
if (res.success) { |
|
|
|
this.dialogVisible2 = false |
|
|
|
} else { |
|
|
|
// 根据resp.code进行异常情况处理 |
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|