md
This commit is contained in:
parent
2efa0b3ca0
commit
5cae18001f
@ -9,6 +9,15 @@ export function listEmisSupplier(query) {
|
||||
})
|
||||
}
|
||||
|
||||
// 查询公司供应商表列表 ,简化数据
|
||||
export function listSimpleEmisSupplier(query) {
|
||||
return request({
|
||||
url: '/emis/emisSupplier/listSimple',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询公司供应商表详细
|
||||
export function getEmisSupplier(id) {
|
||||
return request({
|
||||
|
||||
@ -246,9 +246,11 @@
|
||||
<script>
|
||||
import { listEmisTmsCostFee, getEmisTmsCostFee, delEmisTmsCostFee, addEmisTmsCostFee, updateEmisTmsCostFee } from "@/api/emis/emisTmsCostFee";
|
||||
import {listEmisSettleSubBill} from "@/api/emis/emisSettleSubBill";
|
||||
import EmisTmsSiteBatchPicker from '@/views/emis/EmisBaseTools/EmisTmsSiteBatchPicker';
|
||||
import { listEmisTmsSiteBatchDtl} from "@/api/emis/emisTmsSiteBatchDtl";
|
||||
|
||||
import EmisTmsSiteBatchPicker from '@/views/emis/EmisBaseTools/EmisTmsSiteBatchPicker';
|
||||
import EmisSupplierPicker from '@/views/emis/EmisBaseTools/EmisSupplierPicker';
|
||||
|
||||
export default {
|
||||
name: "emisTmsCostFeeForm",
|
||||
props:{
|
||||
@ -256,7 +258,7 @@ export default {
|
||||
type:Number
|
||||
}
|
||||
},
|
||||
components: { EmisTmsSiteBatchPicker },
|
||||
components: { EmisTmsSiteBatchPicker,EmisSupplierPicker },
|
||||
dicts: ['emis_cost_fee_type','emis_supplier_name','emis_cost_split_type','emis_biz_shipping_method','emis_payment_type'],
|
||||
data() {
|
||||
return {
|
||||
|
||||
@ -1,22 +1,53 @@
|
||||
<template>
|
||||
<div style="margin-bottom: 20px;">
|
||||
<el-form ref="formCo" size="mini" :model="coData" :rules="coRules" :disabled="disabled" label-width="80px" class="overflowhidden" >
|
||||
<el-form ref="form" size="mini" :model="form" :rules="rules" :disabled="disabled" label-width="80px" class="overflowhidden" >
|
||||
<el-row :gutter="20" style="display: flex;flex-wrap: wrap;">
|
||||
<el-col :span="16" style="border-right: 1px solid #e4e1e1;">
|
||||
<el-col :span="19" style="border-right: 1px solid #e4e1e1;">
|
||||
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
||||
|
||||
<el-col :span="6">
|
||||
<el-form-item :label="$t('批次号')" prop="batchNo">
|
||||
<el-input v-model="coData.batchNo" placeholder="自动生成" disabled />
|
||||
<el-input v-model="form.batchNo" placeholder="自动生成" disabled />
|
||||
<!-- <span>{{ form.batchNo }}</span> -->
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item :label="$t('批次名称')" prop="batchName">
|
||||
<el-input v-model="coData.batchName" clearable="" placeholder=""></el-input>
|
||||
<el-col :span="10">
|
||||
<el-form-item :label="$t('批次名称')" prop="batchName" label-width="110px">
|
||||
<span slot="label">
|
||||
<el-tooltip placement="top">
|
||||
<div slot="content" class="tips-content text-tips-content">
|
||||
<span>批次名称规则:</span><br>
|
||||
<div class="rule-box">
|
||||
1)快递(E):<br>
|
||||
快递(E)-南京分拨中心(NJ)-供应商-昆明(KM)-250113-提单号<br>
|
||||
ENJDHKM250113+提单号<br>
|
||||
2)空运(A):<br>
|
||||
空运(A)-南京分拨中心(NJ)-供应商-昆明(KM)-250113-提单号<br>
|
||||
ANJNHKM250113+提单号<br>
|
||||
3)陆运(L):<br>
|
||||
陆运(L)-南京分拨中心(NJ)-供应商-昆明(KM)-250113-车牌<br>
|
||||
LNJJTKM250113+车牌<br>
|
||||
4)海运(S):<br>
|
||||
海运(S)-上海-供应商-西港-250113-提单号<br>
|
||||
SSHXG250113+提单号<br>
|
||||
5)铁路(R):<br>
|
||||
铁路(R)-上海-供应商-南宁-250113-集装箱号<br>
|
||||
RSHNN250113+集装箱号<br>
|
||||
6)国内进仓(D):<br>
|
||||
同行(D)-上海-供应商-南京分拨中心-250113-运单号/订单号 (顺丰、跨越、百世、安能、中通、申通、货拉拉、运满满等)<br>
|
||||
DSHNN250113+运单号/订单号<br>
|
||||
</div>
|
||||
</div>
|
||||
<i class="el-icon-question" />
|
||||
</el-tooltip>
|
||||
<span >批次名称:</span>
|
||||
</span>
|
||||
<el-input v-model="form.batchName" clearable="" placeholder="" ></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('批次类型')" prop="batchType">
|
||||
<el-select v-model="coData.batchType" placeholder="" style="width:100%">
|
||||
<el-select v-model="form.batchType" placeholder="" style="width:100%">
|
||||
<el-option key="1" label="一程批次" value="1"></el-option>
|
||||
<el-option key="2" label="二程批次" value="2"></el-option>
|
||||
<el-option key="4" label="三程批次" value="4"></el-option>
|
||||
@ -27,29 +58,24 @@
|
||||
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('起始网点')" prop="startSiteCode">
|
||||
<EmisSiteSimplePicker :placeholder="$t('请选择')" @change="onSiteSelect" v-model="coData.startSiteCode" ></EmisSiteSimplePicker>
|
||||
<EmisSiteSimplePicker :placeholder="$t('请选择')" @onChange="onSiteSelect" v-model="form.startSiteCode" ></EmisSiteSimplePicker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('下一网点')" prop="nextSiteCode">
|
||||
<EmisSiteSimplePicker :placeholder="$t('请选择')" @change="onNextSiteSelect" v-model="coData.nextSiteCode" ></EmisSiteSimplePicker>
|
||||
<EmisSiteSimplePicker :placeholder="$t('请选择')" @onChange="onNextSiteSelect" v-model="form.nextSiteCode" ></EmisSiteSimplePicker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('承运重量')" prop="transWeight">
|
||||
<el-input v-model="coData.transWeight" clearable="" placeholder="" >
|
||||
<span slot="suffix">(kg)</span>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('包裹数')" prop="packNum">
|
||||
<el-input v-model="coData.packNum" clearable="" placeholder="" ></el-input>
|
||||
<el-form-item :label="$t('目的国')" prop="destCountry">
|
||||
<CountryPicker :placeholder="$t('选择国')" v-model="form.destCountry" ></CountryPicker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
|
||||
<el-col :span="8">
|
||||
<el-form-item label="运输方式" prop="transType">
|
||||
<el-select v-model="coData.transType" placeholder="运输方式" clearable filterable >
|
||||
<el-select v-model="form.transType" placeholder="运输方式" clearable filterable style="width:100%" @change="calcBatchName" >
|
||||
<el-option
|
||||
v-for="dict in dict.type.emis_biz_shipping_method"
|
||||
:key="dict.value"
|
||||
@ -59,58 +85,77 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('供应商')" prop="supplierCode">
|
||||
<EmisSupplierPicker :placeholder="$t('请选择')" @onChange="onSupplierSelect" v-model="form.supplierCode" ></EmisSupplierPicker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<el-form-item :label="$t('运输号')" prop="carNo">
|
||||
<el-input v-model="coData.carNo" clearable="" placeholder="车牌号/船次号/提单号"></el-input>
|
||||
<el-input v-model="form.carNo" clearable="" placeholder="车牌号/船次号/提单号" @change="calcBatchName"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('承运重量')" prop="transWeight">
|
||||
<el-input v-model="form.transWeight" clearable="" placeholder="" >
|
||||
<span slot="suffix">(kg)</span>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('包裹数')" prop="packNum">
|
||||
<el-input v-model="form.packNum" clearable="" placeholder="" ></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<el-form-item label="发出时间" prop="etd">
|
||||
<el-form-item label="发出时间" prop="etd" >
|
||||
<el-date-picker clearable
|
||||
v-model="coData.etd"
|
||||
v-model="form.etd"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd"
|
||||
placeholder="请选择发出时间"
|
||||
style="width:100%"
|
||||
|
||||
@change="calcBatchName"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item :label="$t('目的国')" prop="destCountry">
|
||||
<CountryPicker :placeholder="$t('选择国')" v-model="coData.destCountry" ></CountryPicker>
|
||||
<el-col :span="24">
|
||||
<el-form-item :label="$t('备注')" prop="remark">
|
||||
<el-input v-model="form.remark" clearable="" type="textarea" placeholder="" ></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
</el-row>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="8">
|
||||
<el-col :span="5">
|
||||
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
||||
<el-col :span="12">
|
||||
<el-col :span="24">
|
||||
<el-form-item style="font-weight:600;" label-width="0px">
|
||||
<span>{{$t('总票数') + ': ' + (coData.totalWaybillQty || 0)}}</span>
|
||||
<span>{{$t('总票数') + ': ' + (form.totalWaybillQty || 0)}}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="24">
|
||||
<el-form-item style="font-weight:600;" label-width="0px">
|
||||
<span>{{$t('总件数') + ': ' + (coData.totalParcelQty || 0)}}</span>
|
||||
<span>{{$t('总重量') + ': ' + (form.totalWeight || 0)}}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="24">
|
||||
<el-form-item style="font-weight:600;" label-width="0px">
|
||||
<span>{{$t('总重量') + ': ' + (coData.totalWeight || 0)}}</span>
|
||||
<span>{{$t('总件数') + ': ' + (form.totalParcelQty || 0)}}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="24">
|
||||
<el-form-item style="font-weight:600;" label-width="0px">
|
||||
<span>{{$t('总体积') + ': ' + (coData.totalVolume || 0)}}</span>
|
||||
<span>{{$t('总体积') + ': ' + (form.totalVolume || 0)}}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="24" style="" v-if="['3','4','5'].indexOf(coData.transType) > -1">
|
||||
<el-col :span="24" style="" v-if="['3','4','5'].indexOf(form.transType) > -1">
|
||||
<div style="margin-top:20px;padding: 3px 5px;font-size: 14px;">
|
||||
装柜示意图
|
||||
</div>
|
||||
@ -205,7 +250,7 @@
|
||||
:disabled="coMultiple"
|
||||
>移除运单</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5" v-if="this.coData.id!=null">
|
||||
<el-col :span="1.5" v-if="this.form.id!=null">
|
||||
<el-button style="margin-right: 5px;"
|
||||
type="warning"
|
||||
plain
|
||||
@ -305,9 +350,6 @@
|
||||
<el-button @click="cancelBatch">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -325,8 +367,10 @@ import TransProductPicker from '@/views/emis/EmisBaseTools/TransProductPicker.vu
|
||||
import TransLinePicker from '@/views/emis/EmisBaseTools/TransLinePicker.vue';
|
||||
import { parseTime, dateToStr } from "@/utils/custom";
|
||||
import { formatSearchStr } from '@/utils/index'
|
||||
import moment from 'moment'
|
||||
|
||||
import PackListView from '@/views/emis/emisTmsSiteBatch/packListView';
|
||||
import EmisSupplierPicker from '@/views/emis/EmisBaseTools/EmisSupplierPicker';
|
||||
|
||||
export default {
|
||||
name: "BigBatchEditForm",
|
||||
@ -341,7 +385,7 @@ export default {
|
||||
},
|
||||
|
||||
},
|
||||
components: { EmisGetNextSitePicker, CountryPicker, EmisSiteSimplePicker, elDateAdvPicker, emisTmsPackForm, TransLinePicker, TransProductPicker, PackListView},
|
||||
components: { EmisGetNextSitePicker, CountryPicker, EmisSiteSimplePicker, elDateAdvPicker, emisTmsPackForm, TransLinePicker, TransProductPicker, PackListView,EmisSupplierPicker},
|
||||
dicts: ['emis_waybill_status', 'emis_payment_type', 'emis_biz_shipping_method', 'emis_qujian_fangshi', 'cebp_return_status','emis_declare_mode','emis_customs_clear'],
|
||||
data() {
|
||||
return {
|
||||
@ -382,15 +426,18 @@ export default {
|
||||
doneTotal:0,
|
||||
waitPackList:[],//选择未组包的运单先保存起来,在后续新增组批次的弹框中使用
|
||||
// 新增/修改弹窗数据
|
||||
coData: {},
|
||||
form: {},
|
||||
|
||||
coRules: {
|
||||
rules: {
|
||||
batchType: [
|
||||
{ required: true, message: "批次类型不能为空", trigger: ["blur","change"] },
|
||||
],
|
||||
batchName: [
|
||||
{ required: true, message: "批次名称不能为空", trigger: ["blur","change"] },
|
||||
],
|
||||
// supplierCode: [
|
||||
// { required: true, message: "供应商不能为空", trigger: ["blur","change"] },
|
||||
// ],
|
||||
// destCountry: [
|
||||
// { required: true, message: "目的国不能为空", trigger: ["blur","change"] },
|
||||
// ],
|
||||
@ -537,7 +584,76 @@ export default {
|
||||
this.initData();
|
||||
},
|
||||
methods: {
|
||||
// 批次名称计算
|
||||
calcBatchName(){
|
||||
/*
|
||||
1、批次名称规则:
|
||||
1)快递(E):
|
||||
快递(E)-南京分拨中心(NJ)-东航(DH)-昆明(KM)-250113-提单号
|
||||
ENJDHKM250113+提单号
|
||||
2)空运(A):
|
||||
空运(A)-南京分拨中心(NJ)-南航(NH)-昆明(KM)-250113-提单号
|
||||
ANJNHKM250113+提单号
|
||||
3)陆运(L):
|
||||
陆运(L)-南京分拨中心(NJ)-九通(JT)-昆明(KM)-250113-车牌
|
||||
LNJJTKM250113+车牌
|
||||
4)海运(S):
|
||||
海运(S)-上海-西港-250113-提单号
|
||||
SSHXG250113+提单号
|
||||
5)铁路(R):
|
||||
铁路(R)-上海-南宁-250113-集装箱号
|
||||
RSHNN250113+集装箱号
|
||||
6)国内进仓(D):
|
||||
上海-顺丰-南京分拨中心-250113-运单号/订单号 (顺丰、跨越、百世、安能、中通、申通、货拉拉、运满满等)
|
||||
DSHNN250113+运单号/订单号
|
||||
*/
|
||||
if(this.form.transType==1){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 快递(E)-南京分拨中心(NJ)-东航(DH)-昆明(KM)-250113-提单号
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "E"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
else if(this.form.transType==2){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 空运(A)-南京分拨中心(NJ)-南航(NH)-昆明(KM)-250113-提单号
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "A"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
else if(this.form.transType==3){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 陆运(L)-南京分拨中心(NJ)-九通(JT)-昆明(KM)-250113-车牌
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "L"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
else if(this.form.transType==4){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 海运(S)-上海-供应商-西港-250113-提单号
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "S"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
else if(this.form.transType==5){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 铁路(R)-上海-南宁-250113-集装箱号
|
||||
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "R"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
else if(this.form.transType==6){
|
||||
if(this.form.etd&&this.form.transType&&this.form.supplierNameEn&&this.form.startSiteSizeCode3&&this.form.nextSiteSizeCode3&&this.form.carNo){
|
||||
// 国内进仓(D)-上海-供应商-南宁-250113-集装箱号
|
||||
let yymmdd = moment(this.form.etd).format('YYMMDD');
|
||||
this.form.batchName = "D"+this.form.startSiteSizeCode3+""+this.form.supplierNameEn+""+yymmdd+this.form.nextSiteSizeCode3+this.form.carNo;
|
||||
}
|
||||
}
|
||||
|
||||
console.log("====>batchName===>",this.form.batchName);
|
||||
|
||||
},
|
||||
async initData() {
|
||||
|
||||
if(this.batchId !=null) {
|
||||
@ -546,31 +662,36 @@ export default {
|
||||
}else{
|
||||
this.reset();
|
||||
|
||||
this.coData.startSiteCode=this.$store.getters.ownerSiteCode;
|
||||
this.coData.batchType='1';
|
||||
this.form.startSiteCode=this.$store.getters.ownerSiteCode;
|
||||
this.form.batchType='1';
|
||||
this.coPackType = "add";
|
||||
|
||||
let resPack = await getTmsGroupBatchNo();
|
||||
this.coData.batchNo = resPack.data;
|
||||
this.form.batchNo = resPack.data;
|
||||
|
||||
this.coData.batchDate=parseTime(new Date());
|
||||
this.form.batchDate=parseTime(new Date());
|
||||
|
||||
}
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.coData = {
|
||||
this.form = {
|
||||
id: null,
|
||||
batchNo: null,
|
||||
batchName: null,
|
||||
batchDate: null,
|
||||
supplierCode: null,
|
||||
supplierName: null,
|
||||
supplierNameEn: null,
|
||||
transLineType: null,
|
||||
productType: null,
|
||||
batchType: null,
|
||||
transType: null,
|
||||
startSiteCode: null,
|
||||
startSiteSizeCode3:null,
|
||||
sendCountry: null,
|
||||
nextSiteCode: null,
|
||||
nextSiteSizeCode3:null,
|
||||
airBilllNo: null,
|
||||
etd: null,
|
||||
eta: null,
|
||||
@ -589,9 +710,8 @@ export default {
|
||||
opMan: null,
|
||||
remark: null,
|
||||
tenantId: null,
|
||||
|
||||
};
|
||||
this.resetForm("formCo");
|
||||
this.resetForm("form");
|
||||
},
|
||||
|
||||
async showBatchInfo(batchId){
|
||||
@ -604,24 +724,24 @@ export default {
|
||||
// let resData = response.data;
|
||||
// let time = {};
|
||||
// time.carTime = resData.etd;
|
||||
this.coData = {...response.data};
|
||||
this.form = {...response.data};
|
||||
|
||||
this.emisCoPackDetail=[];
|
||||
let resList = await listEmisTmsSiteBatchDtl({batchNo: this.coData.batchNo});
|
||||
let resList = await listEmisTmsSiteBatchDtl({batchNo: this.form.batchNo});
|
||||
if(!resList || resList.code != 200){
|
||||
this.$modal.msgError(resList && resList.msg || "未知错误");
|
||||
return;
|
||||
}
|
||||
this.tempExistCoPackWayBillList = resList.rows;
|
||||
//临时存储,用于运单号校验
|
||||
this.tempCoPackInfo = this.coData;
|
||||
this.tempCoPackInfo = this.form;
|
||||
for(let p = 0; p < resList.rows.length;p++){
|
||||
this.emisCoPackDetail.push(resList.rows[p].waybillDetail);
|
||||
}
|
||||
this.coData.packStatus = this.tempCoPackInfo.packStatus;
|
||||
this.coData.scanDate = this.tempCoPackInfo.scanDate;
|
||||
this.form.packStatus = this.tempCoPackInfo.packStatus;
|
||||
this.form.scanDate = this.tempCoPackInfo.scanDate;
|
||||
|
||||
let resLoadingList = await listEmisTmsSiteBatchLoading({batchNo: this.coData.batchNo});
|
||||
let resLoadingList = await listEmisTmsSiteBatchLoading({batchNo: this.form.batchNo});
|
||||
if(!resLoadingList || resLoadingList.code != 200){
|
||||
this.$modal.msgError(resLoadingList && resLoadingList.msg || "未知错误");
|
||||
return;
|
||||
@ -690,7 +810,7 @@ export default {
|
||||
|
||||
this.loadingWait = true;
|
||||
this.queryWaitParams.params.isNeedBatch = 1;
|
||||
this.queryWaitParams.params.batchType = this.coData.batchType;
|
||||
this.queryWaitParams.params.batchType = this.form.batchType;
|
||||
|
||||
listEmisWaybill(this.queryWaitParams).then(response => {
|
||||
this.loadingWait = false;
|
||||
@ -798,7 +918,7 @@ export default {
|
||||
}
|
||||
}
|
||||
this.wayBillData.params.isNeedBatch = 1;
|
||||
this.wayBillData.params.batchType = this.coData.batchType;
|
||||
this.wayBillData.params.batchType = this.form.batchType;
|
||||
listEmisWaybill(this.wayBillData).then(response => {
|
||||
this.loading2 = false;
|
||||
if(response.code != 200){
|
||||
@ -811,23 +931,44 @@ export default {
|
||||
this.wayBillotal = response.total;
|
||||
})
|
||||
},
|
||||
onSupplierSelect(item){
|
||||
console.log("==onSupplierSelect===>",item);
|
||||
this.form.supplierCode=item.code;
|
||||
this.form.supplierName=item.name;
|
||||
this.form.supplierNameEn=item.nameEn;
|
||||
// 计算批次名称
|
||||
this.calcBatchName();
|
||||
|
||||
},
|
||||
onSiteSelect(item){
|
||||
console.log("==onSiteSelect===>",item);
|
||||
if(!item){
|
||||
this.coData.startSiteCode = null;
|
||||
this.coData.startSiteName = null;
|
||||
this.form.startSiteCode = null;
|
||||
this.form.startSiteName = null;
|
||||
this.form.startSiteSizeCode3 = null;
|
||||
return;
|
||||
}
|
||||
this.coData.startSiteCode=item && item.siteCode;
|
||||
this.coData.startSiteName=item && item.siteName;
|
||||
this.form.startSiteCode=item && item.siteCode;
|
||||
this.form.startSiteName=item && item.siteName;
|
||||
this.form.startSiteSizeCode3 = item && item.sizeCode3;
|
||||
|
||||
// 计算批次名称
|
||||
this.calcBatchName();
|
||||
|
||||
},
|
||||
onNextSiteSelect(item){
|
||||
if(!item){
|
||||
this.coData.nextSiteCode = null;
|
||||
this.coData.nextSiteName = null;
|
||||
this.form.nextSiteCode = null;
|
||||
this.form.nextSiteName = null;
|
||||
this.form.nextSiteSizeCode3 = null;
|
||||
return;
|
||||
}
|
||||
this.coData.nextSiteCode=item && item.siteCode;
|
||||
this.coData.nextSiteName=item && item.siteName;
|
||||
this.form.nextSiteCode=item && item.siteCode;
|
||||
this.form.nextSiteName=item && item.siteName;
|
||||
this.form.nextSiteSizeCode3 = item && item.sizeCode3;
|
||||
|
||||
// 计算批次名称
|
||||
this.calcBatchName();
|
||||
},
|
||||
onDateSelect(value){
|
||||
console.log("date picker---->", value)
|
||||
@ -844,7 +985,7 @@ export default {
|
||||
},
|
||||
|
||||
submitAddCoPackForm() {
|
||||
this.$refs["formCo"].validate(valid => {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
this.handleAddCoPack();
|
||||
}
|
||||
@ -858,13 +999,13 @@ export default {
|
||||
return;
|
||||
}
|
||||
|
||||
// this.coData.etd = parseTime(this.coData.carTime, '{y}-{m}-{d} {h}:{i}:{s}');
|
||||
// this.form.etd = parseTime(this.form.carTime, '{y}-{m}-{d} {h}:{i}:{s}');
|
||||
|
||||
// 新增
|
||||
if(this.coPackType == "add")
|
||||
{
|
||||
|
||||
let response = await addEmisTmsSiteBatch(this.coData);
|
||||
let response = await addEmisTmsSiteBatch(this.form);
|
||||
if(!response || response.code != 200){
|
||||
this.$modal.msgError(response && response.msg || '新增组批次失败')
|
||||
return;
|
||||
@ -872,7 +1013,7 @@ export default {
|
||||
|
||||
for(let i = 0; i< this.emisCoPackDetail.length;i++){
|
||||
let packDetail = {
|
||||
batchNo:this.coData.batchNo,
|
||||
batchNo:this.form.batchNo,
|
||||
billCode: this.emisCoPackDetail[i].billCode,
|
||||
scanDate: this.emisCoPackDetail[i].scanDate,
|
||||
scanStatus: this.emisCoPackDetail[i].scanStatus,
|
||||
@ -893,7 +1034,7 @@ export default {
|
||||
for(let lr = 0; lr < 3; lr++){
|
||||
for(let ll = 0; ll < 6; ll++){
|
||||
let batchLoadingData = {
|
||||
batchNo: this.coData.batchNo,
|
||||
batchNo: this.form.batchNo,
|
||||
posNo:lr+":"+ll+":1",
|
||||
row: lr,
|
||||
col: ll,
|
||||
@ -911,7 +1052,7 @@ export default {
|
||||
}
|
||||
}
|
||||
else if(this.coPackType == "edit"){// 修改
|
||||
let res = await updateEmisTmsSiteBatch(this.coData);
|
||||
let res = await updateEmisTmsSiteBatch(this.form);
|
||||
if(!res || res.code != 200){
|
||||
this.$modal.msgError(res && res.msg || '未知错误')
|
||||
return;
|
||||
@ -940,7 +1081,7 @@ export default {
|
||||
},
|
||||
|
||||
handleCancelCo(){
|
||||
this.coData={};
|
||||
this.form={};
|
||||
this.blUnpack="1";
|
||||
this.emisCoPackDetail=[];
|
||||
this.$emit("on-cancel");
|
||||
@ -965,7 +1106,7 @@ export default {
|
||||
billCode:billcode,
|
||||
params:{
|
||||
isNeedBatch:1,
|
||||
batchType:this.coData.batchType
|
||||
batchType:this.form.batchType
|
||||
}
|
||||
}
|
||||
);
|
||||
@ -980,7 +1121,7 @@ export default {
|
||||
this.emisCoPackDetail.push(item);
|
||||
if(this.coPackType=="edit"){
|
||||
let packDetail = {
|
||||
batchNo: this.coData.batchNo,
|
||||
batchNo: this.form.batchNo,
|
||||
billCode: item.billCode,
|
||||
scanDate: item.scanDate,
|
||||
scanStatus: item.scanStatus,
|
||||
@ -1013,7 +1154,7 @@ export default {
|
||||
this.computeTotal();
|
||||
// 更新主表
|
||||
if(this.coPackType=="edit"){
|
||||
let res = await updateEmisTmsSiteBatch(this.coData);
|
||||
let res = await updateEmisTmsSiteBatch(this.form);
|
||||
if(!res || res.code != 200){
|
||||
this.$modal.msgError(res && res.msg || '未知错误')
|
||||
return;
|
||||
@ -1026,7 +1167,7 @@ export default {
|
||||
this.emisCoPackDetail.push(item);
|
||||
if(this.coPackType=="edit"){
|
||||
let packDetail = {
|
||||
batchNo: this.coData.batchNo,
|
||||
batchNo: this.form.batchNo,
|
||||
billCode: item.billCode,
|
||||
scanDate: item.scanDate,
|
||||
scanStatus: item.scanStatus,
|
||||
@ -1058,7 +1199,7 @@ export default {
|
||||
this.computeTotal();
|
||||
// 更新主表
|
||||
if(this.coPackType=="edit"){
|
||||
let res = await updateEmisTmsSiteBatch(this.coData);
|
||||
let res = await updateEmisTmsSiteBatch(this.form);
|
||||
if(!res || res.code != 200){
|
||||
this.$modal.msgError(res && res.msg || '未知错误')
|
||||
return;
|
||||
@ -1120,16 +1261,16 @@ export default {
|
||||
|
||||
this.computeTotal();
|
||||
// 更新主表
|
||||
this.tempCoPackInfo.destCountry = this.coData.destCountry;
|
||||
// this.tempCoPackInfo.sendStiteCode = this.coData.sendStiteCode;
|
||||
// this.tempCoPackInfo.sendStiteName = this.coData.sendStiteName || null;
|
||||
this.tempCoPackInfo.nextSiteCode = this.coData.nextSiteCode;
|
||||
this.tempCoPackInfo.nextSiteName = this.coData.nextSiteName;
|
||||
this.tempCoPackInfo.destCountry = this.form.destCountry;
|
||||
// this.tempCoPackInfo.sendStiteCode = this.form.sendStiteCode;
|
||||
// this.tempCoPackInfo.sendStiteName = this.form.sendStiteName || null;
|
||||
this.tempCoPackInfo.nextSiteCode = this.form.nextSiteCode;
|
||||
this.tempCoPackInfo.nextSiteName = this.form.nextSiteName;
|
||||
this.tempCoPackInfo.blUnpack = this.blUnpack;
|
||||
this.tempCoPackInfo.totalWaybillQty = this.coData.totalWaybillQty;
|
||||
this.tempCoPackInfo.totalParcelQty = this.coData.totalParcelQty;
|
||||
this.tempCoPackInfo.totalWeight = this.coData.totalWeight;
|
||||
this.tempCoPackInfo.totalVolume = this.coData.totalVolume;
|
||||
this.tempCoPackInfo.totalWaybillQty = this.form.totalWaybillQty;
|
||||
this.tempCoPackInfo.totalParcelQty = this.form.totalParcelQty;
|
||||
this.tempCoPackInfo.totalWeight = this.form.totalWeight;
|
||||
this.tempCoPackInfo.totalVolume = this.form.totalVolume;
|
||||
let res = await updateEmisTmsSiteBatch(this.tempCoPackInfo);
|
||||
if(!res || res.code != 200){
|
||||
this.$modal.msgError(res && res.msg || '未知错误')
|
||||
@ -1182,19 +1323,19 @@ export default {
|
||||
totalParcelQty +=item.parcelQty;
|
||||
totalWeight +=item.billWeight;
|
||||
totalVolume +=item.totalVolume;
|
||||
item.destCountry = this.coData.destCountry;
|
||||
// item.sendSiteCode = this.coData.sendSiteCode;
|
||||
item.startSiteCode = this.coData.startSiteCode;
|
||||
item.startSiteName = this.coData.startSiteName;
|
||||
// item.nextSiteCode = this.coData.nextSiteCode;
|
||||
item.nextSiteCode = this.coData.nextSiteCode;
|
||||
item.nextSiteName = this.coData.nextSiteName;
|
||||
item.destCountry = this.form.destCountry;
|
||||
// item.sendSiteCode = this.form.sendSiteCode;
|
||||
item.startSiteCode = this.form.startSiteCode;
|
||||
item.startSiteName = this.form.startSiteName;
|
||||
// item.nextSiteCode = this.form.nextSiteCode;
|
||||
item.nextSiteCode = this.form.nextSiteCode;
|
||||
item.nextSiteName = this.form.nextSiteName;
|
||||
item.blUnpack = this.blUnpack;
|
||||
})
|
||||
this.coData.totalWaybillQty=this.emisCoPackDetail.length;
|
||||
this.coData.totalParcelQty=totalParcelQty;
|
||||
this.coData.totalWeight=totalWeight.toFixed(2);
|
||||
this.coData.totalVolume=totalVolume.toFixed(4);
|
||||
this.form.totalWaybillQty=this.emisCoPackDetail.length;
|
||||
this.form.totalParcelQty=totalParcelQty;
|
||||
this.form.totalWeight=totalWeight.toFixed(2);
|
||||
this.form.totalVolume=totalVolume.toFixed(4);
|
||||
},
|
||||
// 排序 查询字段是表格中字段名字 动态取值排序顺序
|
||||
handleSortChange(column) {
|
||||
@ -1221,7 +1362,7 @@ export default {
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
async handleUpdate() {
|
||||
// this.coData={};
|
||||
// this.form={};
|
||||
let id = this.ids[0]
|
||||
this.coPackType="edit";
|
||||
let response = await getEmisTmsSiteBatch(id);
|
||||
@ -1233,7 +1374,7 @@ export default {
|
||||
let time = {};
|
||||
|
||||
time.carTime = resData.etd;
|
||||
this.coData = {...resData, ...{batchDate:resData.createTime}, ...time};
|
||||
this.form = {...resData, ...{batchDate:resData.createTime}, ...time};
|
||||
|
||||
this.emisCoPackDetail=[];
|
||||
let resList = await listEmisTmsSiteBatchDtl({batchNo: resData.batchNo});
|
||||
@ -1246,8 +1387,8 @@ export default {
|
||||
for(let p = 0; p < resList.rows.length;p++){
|
||||
this.emisCoPackDetail.push(resList.rows[p].waybillDetail);
|
||||
}
|
||||
this.coData.packStatus = this.tempCoPackInfo.packStatus;
|
||||
this.coData.scanDate = this.tempCoPackInfo.scanDate;
|
||||
this.form.packStatus = this.tempCoPackInfo.packStatus;
|
||||
this.form.scanDate = this.tempCoPackInfo.scanDate;
|
||||
|
||||
let resLoadingList = await listEmisTmsSiteBatchLoading({batchNo: resData.batchNo});
|
||||
if(!resLoadingList || resLoadingList.code != 200){
|
||||
@ -1310,7 +1451,7 @@ export default {
|
||||
let qExportParam={
|
||||
pageNum:1,
|
||||
pageSize:20000,
|
||||
batchNo: this.coData.batchNo
|
||||
batchNo: this.form.batchNo
|
||||
};
|
||||
|
||||
listEmisTmsSiteBatchDtl(qExportParam).then(response => {
|
||||
|
||||
@ -57,6 +57,9 @@
|
||||
<el-form-item label="目的国" prop="destCountry">
|
||||
<CountryPicker :placeholder="$t('目的国')" v-model="queryParams.destCountry" ></CountryPicker>
|
||||
</el-form-item>
|
||||
<el-form-item label="供应商" prop="supplierCode">
|
||||
<EmisSupplierPicker :placeholder="$t('请选择')" v-model="queryParams.supplierCode" ></EmisSupplierPicker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</SearchForm>
|
||||
@ -191,6 +194,7 @@
|
||||
<el-table-column :label="$t('起始网点')" align="center" prop="startSiteName" min-width="150" />
|
||||
<el-table-column :label="$t('下一网点')" align="center" prop="nextSiteName" min-width="150" />
|
||||
<el-table-column :label="$t('目的国家')" align="center" prop="destCountryName" min-width="100"/>
|
||||
<el-table-column :label="$t('供应商')" align="center" prop="supplierName" min-width="150"/>
|
||||
<el-table-column :label="$t('总票数')" align="center" prop="totalWaybillQty" min-width="100" />
|
||||
<el-table-column :label="$t('总件数')" align="center" prop="totalParcelQty" min-width="100" />
|
||||
<el-table-column :label="$t('总重量(kg)')" align="center" prop="totalWeight" min-width="100" />
|
||||
@ -216,10 +220,15 @@ import { formatSearchStr } from '@/utils/index'
|
||||
import { listEmisTmsSiteBatchDtl} from "@/api/emis/emisTmsSiteBatchDtl";
|
||||
|
||||
import PackListView from '@/views/emis/emisTmsSiteBatch/packListView';
|
||||
import EmisSupplierPicker from '@/views/emis/EmisBaseTools/EmisSupplierPicker';
|
||||
|
||||
export default {
|
||||
name: "CenterGenBatchMgnt",
|
||||
components: { EmisGetNextSitePicker, CountryPicker, EmisSiteSimplePicker, elDateAdvPicker, emisTmsPackForm, TransLinePicker, TransProductPicker, PackListView},
|
||||
components: { EmisGetNextSitePicker, CountryPicker,
|
||||
EmisSiteSimplePicker, elDateAdvPicker, emisTmsPackForm, TransLinePicker,
|
||||
TransProductPicker, PackListView,
|
||||
EmisSupplierPicker
|
||||
},
|
||||
dicts: [
|
||||
'emis_waybill_status', 'emis_payment_type', 'emis_biz_shipping_method', 'emis_qujian_fangshi', 'cebp_return_status','emis_declare_mode','emis_customs_clear',
|
||||
],
|
||||
@ -328,6 +337,8 @@ export default {
|
||||
nextSiteCode: null,
|
||||
carNo: null,
|
||||
destCountry: null,
|
||||
supplierCode:null,
|
||||
|
||||
params:{
|
||||
queryOrderType: '1',
|
||||
billCode: null
|
||||
|
||||
@ -1,15 +1,24 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" size="mini" :model="form" label-width="80px">
|
||||
<!-- <SearchForm :ref="form" :model="picUrl" ref="queryForm" size="small" :maxShow="8" label-width="100px" v-show="showSearch" @search="getList" @reset="resetQuery"> -->
|
||||
<el-form ref="form" size="mini" :model="form" label-width="80px" @submit.native.prevent>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="上传图片" prop="xxx" label-width="80px">
|
||||
<ImageUpload ref="imageUpload" :fileSize="1" :limit="50" v-model="form.picUrl" @input="handleInput" ></ImageUpload>
|
||||
|
||||
<el-col :span="24">
|
||||
<el-form-item label="上传图片" prop="picUrl" label-width="80px">
|
||||
<ImageUpload ref="imageUpload" :fileSize="5" :limit="10" v-model="form.picUrl" ></ImageUpload>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label="运单号" prop="billCode" label-width="70px">
|
||||
<span slot="label">
|
||||
<span style="color: red">运单号</span>
|
||||
</span>
|
||||
<el-input v-model="form.billCode" clearable="" placeholder="单号输入后按回车" @keyup.enter.native="handleInput" >
|
||||
<i slot="suffix" class="iconfont"></i>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row >
|
||||
<!-- </SearchForm> -->
|
||||
</el-form>
|
||||
|
||||
<xd-table v-loading="loading"
|
||||
@ -49,14 +58,18 @@
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
|
||||
<el-table-column :label="$t('运单编号')" align="center" prop="billCode" min-width="150" />
|
||||
<el-table-column :label="$t('图片URL')" align="center" prop="fileUrl" min-width="100" />
|
||||
<el-table-column :label="$t('图片URL')" align="center" prop="fileUrl" min-width="100" >
|
||||
<template slot-scope="scope">
|
||||
<ImagePreview height="50px" v-for="pic in (scope.row.fileUrl||'').split(',')" :key="pic" :src="pic" ></ImagePreview>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :label="$t('上传网点')" align="center" prop="createSite" min-width="100" />
|
||||
<el-table-column :label="$t('上传人')" align="center" prop="createBy" min-width="100" />
|
||||
<el-table-column :label="$t('大小')" align="center" prop="volumeWeight" min-width="100">
|
||||
<!-- <el-table-column :label="$t('大小')" align="center" prop="volumeWeight" min-width="100">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.fileSiez + "KB" }}</span>
|
||||
</template>
|
||||
</el-table-column>/>
|
||||
</el-table-column>/> -->
|
||||
</xd-table>
|
||||
</div>
|
||||
</template>
|
||||
@ -107,6 +120,7 @@ export default {
|
||||
|
||||
// 表单参数
|
||||
form: {
|
||||
billCode:null,
|
||||
picUrl:null,
|
||||
},
|
||||
|
||||
@ -123,23 +137,25 @@ export default {
|
||||
getList(){
|
||||
|
||||
},
|
||||
async handleInput(item, size){
|
||||
if(item.trim() == ""){
|
||||
// async handleInput(item, size){
|
||||
async handleInput(){
|
||||
if(this.form.billCode == ""||this.form.billCode ==null){
|
||||
this.$modal.msgError("请先输入单号!");
|
||||
return;
|
||||
}
|
||||
let scList = item.trim().split(/[;\;\,\,\n]/)||[];
|
||||
this.form.picUrl =[];
|
||||
for(let s = 0; s<scList.length; s++){
|
||||
let billCode = this.extractSubstring(scList[s]);
|
||||
if(this.dataMap[billCode]) return;
|
||||
let response = await getWaybillDetail(billCode)
|
||||
if(!response || response.code != 200){
|
||||
let billCode=this.form.billCode+'';
|
||||
let response = await getWaybillDetail(billCode)
|
||||
if(!response || response.code != 200){
|
||||
this.$modal.msgError(response && response.msg || "未知错误");
|
||||
return;
|
||||
}
|
||||
let record = {};
|
||||
}
|
||||
|
||||
// let scList = this.form.picUrl.split(',')||[];
|
||||
// for(let s = 0; s<scList.length; s++){
|
||||
// };
|
||||
let record = {};
|
||||
record.billCode=billCode;
|
||||
record.fileUrl=scList[s];
|
||||
record.fileUrl=this.form.picUrl+'';
|
||||
record.createSiteCode=this.$store.getters.ownerSiteCode;
|
||||
record.createSite=this.$store.getters.ownerSiteName;
|
||||
record.createBy=this.$store.getters.empName;
|
||||
@ -149,17 +165,13 @@ export default {
|
||||
record.fileName="货物图片";
|
||||
record.attachType="0";
|
||||
record.dataFrom="pc";
|
||||
for(let name in size){
|
||||
if(name.indexOf(billCode) > -1){
|
||||
record.fileSiez = parseFloat((size[name]/1024).toFixed(2));
|
||||
break;
|
||||
}
|
||||
}
|
||||
record.fileSiez=-1;
|
||||
let indexBillCode=billCode;
|
||||
this.dataMap[indexBillCode]=record;
|
||||
this.emisTmsScanRecordList.push(record);
|
||||
};
|
||||
// this.form.picUrl =[];
|
||||
|
||||
this.form.picUrl =null;
|
||||
this.form.billCode=null;
|
||||
},
|
||||
/** 上传按钮操作 */
|
||||
handleScanUpload(){
|
||||
@ -168,7 +180,6 @@ export default {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var selData = this.selection;
|
||||
selData.forEach(item=>{
|
||||
addEmisWaybillAttachment(item).then(response => {
|
||||
@ -207,13 +218,6 @@ export default {
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
// const ids = row.id || this.ids;
|
||||
// this.$modal.confirm('是否确认删除').then(function() {
|
||||
// return delEmisWaybill(ids);
|
||||
// }).then(() => {
|
||||
// this.getList();
|
||||
// this.$modal.msgSuccess("删除成功");
|
||||
// }).catch(() => {});
|
||||
let newList =[];
|
||||
console.log(this.ids)
|
||||
this.emisTmsScanRecordList.forEach(item=>{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user