md
This commit is contained in:
parent
f639e4a4ba
commit
ea4d4dd574
@ -8,6 +8,8 @@
|
|||||||
</template>
|
</template>
|
||||||
<div>
|
<div>
|
||||||
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
||||||
|
|
||||||
|
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="运单号" prop="billCode" >
|
<el-form-item label="运单号" prop="billCode" >
|
||||||
<div style="display:inline-flex">
|
<div style="display:inline-flex">
|
||||||
@ -30,7 +32,6 @@
|
|||||||
<el-col :span="10">
|
<el-col :span="10">
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
|
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="目的国" prop="reciever.country">
|
<el-form-item label="目的国" prop="reciever.country">
|
||||||
<CountryPicker0 v-model="form.reciever.country"></CountryPicker0>
|
<CountryPicker0 v-model="form.reciever.country"></CountryPicker0>
|
||||||
@ -193,8 +194,11 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="寄件公司" prop="sender.company">
|
<el-form-item label="寄件公司" prop="sender.company"
|
||||||
<el-input v-model="form.sender.company" placeholder="" />
|
:rules="form.paymentType != 2 ? rules.sender.company : []"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="form.sender.company" placeholder="" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
@ -255,7 +259,9 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="收件公司" prop="reciever.company">
|
<el-form-item label="收件公司" prop="reciever.company"
|
||||||
|
:rules="form.paymentType != 4 ? rules.reciever.company : []"
|
||||||
|
>
|
||||||
<el-input v-model="form.reciever.company" placeholder="" />
|
<el-input v-model="form.reciever.company" placeholder="" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -321,7 +327,7 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="总件数" prop="parcelQty" label-width="70px">
|
<el-form-item label="总件数" prop="parcelQty" label-width="70px">
|
||||||
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleGenGoods" @keyup.enter.native="handleGenGoods" placeholder="" />
|
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleInitGenGoods" @keyup.enter.native="handleInitGenGoods" placeholder="" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
@ -383,22 +389,39 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="cargoQty" label="件数" align="center" width="60">
|
<el-table-column prop="cargoQty" label="件数" align="center" width="60">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-input v-model="scope.row.cargoQty" size="mini" placeholder=""></el-input>
|
<el-input v-model="scope.row.cargoQty" @blur="(val)=>handleCargoQtyChange(val,scope.row)" @keyup.enter.native="(val)=>handleCargoQtyChange(val,scope.row)" size="mini" placeholder=""></el-input>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<!-- @input="(val)=>handleCalcQty(val,scope.row)" -->
|
<!-- @input="(val)=>handleCalcQty(val,scope.row)" -->
|
||||||
<!-- <el-table-column prop="goodsName" label="描述" align="center" width="100">
|
<!-- <el-table-column prop="goodsName" label="描述" align="center" width="60">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-input v-model="scope.row.goodsName" @input="(val)=>handleCalcQty(val,scope.row)" size="mini" placeholder=""></el-input>
|
<el-input v-model="scope.row.goodsName" size="mini" placeholder=""></el-input>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
|
|
||||||
<el-table-column label="操作" align="left" min-width="50">
|
<el-table-column label="操作" align="left" min-width="50">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
|
|
||||||
|
<!-- <span style="cursor: pointer;font-size: 21px;color: #6e6e6e;" title="删除"
|
||||||
|
@click="()=>{deleteGoodsItem(scope.row);event.stopPropagation()}"
|
||||||
|
>
|
||||||
|
<i class="el-icon-delete" />
|
||||||
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
<span style="cursor: pointer;font-size: 21px;color: #6e6e6e;" title="复制"
|
||||||
|
@click="()=>{copyGoodsItem(scope.row);event.stopPropagation()}"
|
||||||
|
>
|
||||||
|
<i class="el-icon-copy-document" />
|
||||||
|
</span> -->
|
||||||
|
|
||||||
<span class="icon iconfont"
|
<span class="icon iconfont"
|
||||||
style="cursor: pointer;font-size: 21px;color: #6e6e6e;"
|
style="cursor: pointer;font-size: 21px;color: #6e6e6e;"
|
||||||
@click="()=>deleteGoodsItem(scope.row)"></span>
|
@click="()=>deleteGoodsItem(scope.row,scope.$index)"></span>
|
||||||
|
<span class="icon iconfont"
|
||||||
|
style="cursor: pointer;font-size: 21px;color: #6e6e6e;"
|
||||||
|
@click="()=>copyGoodsItem(scope.row,scope.$index)"></span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
@ -628,29 +651,25 @@
|
|||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24" v-show="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5">
|
<el-col :span="24" v-show="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5">
|
||||||
<el-form-item label="月结账号" prop="thirdCustomerCode" label-width="70px">
|
<el-form-item label="月结账号" prop="custNo" label-width="70px">
|
||||||
<EmisMonthpayAccountPicker v-model="form.custNo" @onChange="onSelectMonthUser"></EmisMonthpayAccountPicker>
|
<EmisMonthpayAccountPicker v-model="form.custNo" @onChange="onSelectMonthUser"></EmisMonthpayAccountPicker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="回款联系人" prop="payee" label-width="80px">
|
<el-form-item label="回款联系人" prop="payee" label-width="85px">
|
||||||
<PayeePicker v-if="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5" :placeholder="$t('回款联系人')" v-model="form.payee" :disabled="true" ></PayeePicker>
|
<PayeePicker v-if="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5" :placeholder="$t('回款联系人')" v-model="form.payee" :disabled="true" ></PayeePicker>
|
||||||
<PayeePicker v-else :placeholder="$t('回款联系人')" v-model="form.payee" ></PayeePicker>
|
<PayeePicker v-else :placeholder="$t('回款联系人')" v-model="form.payee" ></PayeePicker>
|
||||||
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="销售联系人" prop="salesmen" label-width="80px">
|
<el-form-item label="销售联系人" prop="salesmen" label-width="85px">
|
||||||
<SalemanPicker v-if="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5" :placeholder="$t('销售联系人')" v-model="form.salesmen" :disabled="true" ></SalemanPicker>
|
<SalemanPicker v-if="form.paymentType == 2 || form.paymentType == 4 || form.paymentType == 5" :placeholder="$t('销售联系人')" v-model="form.salesmen" :disabled="true" ></SalemanPicker>
|
||||||
<SalemanPicker v-else :placeholder="$t('销售联系人')" v-model="form.salesmen" ></SalemanPicker>
|
<SalemanPicker v-else :placeholder="$t('销售联系人')" v-model="form.salesmen" ></SalemanPicker>
|
||||||
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -827,6 +846,9 @@ data() {
|
|||||||
province: [
|
province: [
|
||||||
{ required: true, message: "省不能为空", trigger: ["blur",'change'] }
|
{ required: true, message: "省不能为空", trigger: ["blur",'change'] }
|
||||||
],
|
],
|
||||||
|
company: [
|
||||||
|
{ required: true, message: "发件公司不能为空", trigger: ["blur",'change'] }
|
||||||
|
],
|
||||||
// city: [
|
// city: [
|
||||||
// { required: true, message: "市不能为空", trigger: "blur" }
|
// { required: true, message: "市不能为空", trigger: "blur" }
|
||||||
// ],
|
// ],
|
||||||
@ -850,6 +872,10 @@ data() {
|
|||||||
province: [
|
province: [
|
||||||
{ required: true, message: "寄件省不能为空", trigger: ["blur",'change'] }
|
{ required: true, message: "寄件省不能为空", trigger: ["blur",'change'] }
|
||||||
],
|
],
|
||||||
|
company: [
|
||||||
|
{ required: true, message: "发件公司不能为空", trigger: ["blur",'change'] }
|
||||||
|
],
|
||||||
|
|
||||||
// city: [
|
// city: [
|
||||||
// { required: true, message: "寄件市不能为空", trigger: "blur" }
|
// { required: true, message: "寄件市不能为空", trigger: "blur" }
|
||||||
// ],
|
// ],
|
||||||
@ -917,12 +943,15 @@ data() {
|
|||||||
dispatchUnderlingSiteCode: [
|
dispatchUnderlingSiteCode: [
|
||||||
{ required: true, message: "目的地网点代码不能为空", trigger: "blur" }
|
{ required: true, message: "目的地网点代码不能为空", trigger: "blur" }
|
||||||
],
|
],
|
||||||
// payee: [
|
custNo: [
|
||||||
// { required: true, message: "销售回款人不能为空", trigger: "blur" }
|
{ required: true, message: "月结卡号不能为空", trigger: "blur" }
|
||||||
// ],
|
],
|
||||||
// salesmen: [
|
payee: [
|
||||||
// { required: true, message: "销售联系人不能为空", trigger: "blur" }
|
{ required: true, message: "销售回款人不能为空", trigger: "blur" }
|
||||||
// ],
|
],
|
||||||
|
salesmen: [
|
||||||
|
{ required: true, message: "销售联系人不能为空", trigger: "blur" }
|
||||||
|
],
|
||||||
takePieceEmployeeCode: [
|
takePieceEmployeeCode: [
|
||||||
{ required: true, message: "取件员代码不能为空", trigger: ["blur",'change'] }
|
{ required: true, message: "取件员代码不能为空", trigger: ["blur",'change'] }
|
||||||
],
|
],
|
||||||
@ -1049,7 +1078,7 @@ methods: {
|
|||||||
this.printerStatusMessage="打印组件已断开!";
|
this.printerStatusMessage="打印组件已断开!";
|
||||||
},
|
},
|
||||||
handleBatchPrint(){
|
handleBatchPrint(){
|
||||||
|
if(this.printerStatus == 1){
|
||||||
if(this.form.billCode){
|
if(this.form.billCode){
|
||||||
// 重要,设置为true才会把右上角X和取消区分开来
|
// 重要,设置为true才会把右上角X和取消区分开来
|
||||||
this.$confirm("确定打印?", "提示", {
|
this.$confirm("确定打印?", "提示", {
|
||||||
@ -1086,10 +1115,23 @@ methods: {
|
|||||||
|
|
||||||
}).catch(() => {});
|
}).catch(() => {});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.$confirm("打印组件未连接,可【返回操作】稍后打印,或【操作下一单】", "提示", {
|
||||||
|
cancelButtonText: "返回操作",
|
||||||
|
confirmButtonText: "操作下一单",
|
||||||
|
type: "warning",
|
||||||
|
distinguishCancelAndClose: true,
|
||||||
|
closeOnClickModal: false
|
||||||
|
}).then(() => {
|
||||||
|
this.reset();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
async handlePrintPreview(){
|
async handlePrintPreview(){
|
||||||
|
|
||||||
|
if(this.printerStatus == 1){
|
||||||
if(this.form.billCode){
|
if(this.form.billCode){
|
||||||
let pdfUrlList=[];
|
let pdfUrlList=[];
|
||||||
let selPrinterName=this.tanexPrinter.getDefaultPrinter();
|
let selPrinterName=this.tanexPrinter.getDefaultPrinter();
|
||||||
@ -1120,6 +1162,18 @@ methods: {
|
|||||||
.catch(error => {
|
.catch(error => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.$confirm("打印组件未连接,可【返回操作】稍后打印,或【操作下一单】", "提示", {
|
||||||
|
cancelButtonText: "返回操作",
|
||||||
|
confirmButtonText: "操作下一单",
|
||||||
|
type: "warning",
|
||||||
|
distinguishCancelAndClose: true,
|
||||||
|
closeOnClickModal: false
|
||||||
|
}).then(() => {
|
||||||
|
this.reset();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
onSelectMonthUser(item){
|
onSelectMonthUser(item){
|
||||||
@ -1155,20 +1209,7 @@ methods: {
|
|||||||
})
|
})
|
||||||
|
|
||||||
},
|
},
|
||||||
deleteGoodsItem(row){
|
|
||||||
this.$confirm('确定删除?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
let newList = this.form.cargoList.filter(item => item.goodsName !== row.goodsName);
|
|
||||||
this.form.cargoList=newList;
|
|
||||||
this.handleCalcQty();
|
|
||||||
this.handleCalcVolume();
|
|
||||||
}).catch(() => {
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
lpadZero(val,len) {
|
lpadZero(val,len) {
|
||||||
return (new Array(len + 1).join('0') + val).slice(-len);
|
return (new Array(len + 1).join('0') + val).slice(-len);
|
||||||
},
|
},
|
||||||
@ -1178,10 +1219,10 @@ methods: {
|
|||||||
for(let i=1;i<=this.form.parcelQty;i++){
|
for(let i=1;i<=this.form.parcelQty;i++){
|
||||||
let subBillCode = this.form.billCode+""+this.lpadZero(i,4);
|
let subBillCode = this.form.billCode+""+this.lpadZero(i,4);
|
||||||
billSubCodeStr=billSubCodeStr+subBillCode+","
|
billSubCodeStr=billSubCodeStr+subBillCode+","
|
||||||
console.log(billSubCodeStr);
|
// console.log(billSubCodeStr);
|
||||||
}
|
}
|
||||||
// let billSubCodeStr = this.form.billCode+"["+this.lpadZero(1,3)+"-"+this.lpadZero(this.form.parcelQty,3)+"]";
|
// let billSubCodeStr = this.form.billCode+"["+this.lpadZero(1,3)+"-"+this.lpadZero(this.form.parcelQty,3)+"]";
|
||||||
console.log(billSubCodeStr);
|
// console.log(billSubCodeStr);
|
||||||
this.form.billCodeSub=billSubCodeStr;
|
this.form.billCodeSub=billSubCodeStr;
|
||||||
}else{
|
}else{
|
||||||
this.form.billCodeSub=null;
|
this.form.billCodeSub=null;
|
||||||
@ -1193,10 +1234,6 @@ methods: {
|
|||||||
},
|
},
|
||||||
initData() {
|
initData() {
|
||||||
this.reset();
|
this.reset();
|
||||||
this.form.sendDate = parseTime(new Date());
|
|
||||||
this.form.sendSiteCode=this.$store.getters.ownerSiteCode;
|
|
||||||
this.form.sendSiteName=this.$store.getters.ownerSiteName;
|
|
||||||
console.log(this.form.sendSiteName)
|
|
||||||
|
|
||||||
if(this.billCode !=null) {
|
if(this.billCode !=null) {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
@ -1206,12 +1243,16 @@ methods: {
|
|||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
|
||||||
this.isNeedSave=true;
|
this.isNeedSave=true;
|
||||||
|
this.form.printTypeCheckList=[1,5]
|
||||||
|
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
// console.log(this.dict.type.emis_declare_mode[0]);
|
|
||||||
|
|
||||||
// this.form.customsEclaration = this.dict.type.emis_declare_mode[0].value;
|
this.form.sendDate = parseTime(new Date());
|
||||||
|
this.form.sendSiteCode=this.$store.getters.ownerSiteCode;
|
||||||
|
this.form.sendSiteName=this.$store.getters.ownerSiteName;
|
||||||
|
console.log(this.form.sendSiteName)
|
||||||
|
|
||||||
this.form.customsEclaration='1';
|
this.form.customsEclaration='1';
|
||||||
this.form.customsClear='1';
|
this.form.customsClear='1';
|
||||||
// this.form.pickupMethod='2';
|
// this.form.pickupMethod='2';
|
||||||
@ -1229,7 +1270,7 @@ methods: {
|
|||||||
this.isNeedSave=true;
|
this.isNeedSave=true;
|
||||||
this.form.printTypeCheckList=[1,5],
|
this.form.printTypeCheckList=[1,5],
|
||||||
|
|
||||||
this.handleGenGoods();
|
this.handleInitGenGoods();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1439,7 +1480,7 @@ methods: {
|
|||||||
let totalVolume=0.0;
|
let totalVolume=0.0;
|
||||||
if(row!=null){
|
if(row!=null){
|
||||||
let volume=parseFloat(row.length)*parseFloat(row.width)*parseFloat(row.height);
|
let volume=parseFloat(row.length)*parseFloat(row.width)*parseFloat(row.height);
|
||||||
row.volume=parseFloat((volume/1000000).toFixed(5));
|
row.volume=parseFloat((volume/1000000).toFixed(5))*parseFloat(row.cargoQty);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.form.cargoList.forEach(item=>{
|
this.form.cargoList.forEach(item=>{
|
||||||
@ -1448,35 +1489,17 @@ methods: {
|
|||||||
this.form.totalVolume = parseFloat(totalVolume.toFixed(5));
|
this.form.totalVolume = parseFloat(totalVolume.toFixed(5));
|
||||||
|
|
||||||
},
|
},
|
||||||
handleCalcQty(val,row){
|
|
||||||
let totalCargoQty=0;
|
|
||||||
let goodsInfo='';
|
|
||||||
|
|
||||||
this.form.cargoList.forEach(item=>{
|
|
||||||
totalCargoQty=totalCargoQty+parseInt(item.cargoQty);
|
|
||||||
goodsInfo=goodsInfo+item.goodsName+"x"+item.cargoQty+",";
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
this.form.parcelQty = totalCargoQty;
|
|
||||||
|
|
||||||
this.handleGenSubbill();
|
|
||||||
},
|
|
||||||
handleCalcFeeItem(val,row){
|
handleCalcFeeItem(val,row){
|
||||||
|
|
||||||
let childRealFee=0.0;
|
|
||||||
if(row!=null){
|
if(row!=null){
|
||||||
|
|
||||||
if(row.calcExp){
|
if(row.calcExp){
|
||||||
let expr=row.calcExp+"";
|
let expr="s+w*d";
|
||||||
expr=expr.replace("s",row.initialWeightFee);
|
expr=expr.replace("s",row.initialWeightFee);
|
||||||
expr=expr.replace("d",row.addWeightPrice);
|
expr=expr.replace("d",row.addWeightPrice);
|
||||||
expr=expr.replace("w",this.form.settlementWeight);
|
expr=expr.replace("w",this.form.settlementWeight);
|
||||||
console.log(expr);
|
row.realFee=parseFloat(eval(expr)).toFixed(2);
|
||||||
let childRealFee=parseFloat(eval(expr)).toFixed(2);
|
|
||||||
row.realFee=childRealFee;
|
|
||||||
console.log(childRealFee);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1587,12 +1610,34 @@ methods: {
|
|||||||
this.form.goodsInfo = selNameStr;
|
this.form.goodsInfo = selNameStr;
|
||||||
},
|
},
|
||||||
|
|
||||||
handleGenGoods(){
|
handleInitGenGoods(){
|
||||||
if(this.form.parcelQty>0){
|
if(this.form.parcelQty>0){
|
||||||
|
|
||||||
|
let currentParcelQty = 0;
|
||||||
|
if(this.form.cargoList){
|
||||||
|
this.form.cargoList=[];
|
||||||
|
}
|
||||||
|
|
||||||
|
this.form.cargoList.forEach(item=>{
|
||||||
|
currentParcelQty = currentParcelQty+parseInt(item.cargoQty);
|
||||||
|
});
|
||||||
|
|
||||||
// 新件数大于
|
// 新件数大于
|
||||||
if(this.form.parcelQty>=this.form.cargoList.length){
|
if(this.form.parcelQty>currentParcelQty){
|
||||||
console.log()
|
let len=this.form.parcelQty-currentParcelQty;
|
||||||
let len=this.form.parcelQty-this.form.cargoList.length;
|
if(this.form.parcelQty>20){
|
||||||
|
let cargo={
|
||||||
|
"goodsCode": "",
|
||||||
|
"goodsName": "",
|
||||||
|
"cargoQty": len,
|
||||||
|
"length": 0,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"volume": 0,
|
||||||
|
}
|
||||||
|
this.form.cargoList.push(cargo);
|
||||||
|
}
|
||||||
|
else{
|
||||||
for(let i=0;i<len;i++){
|
for(let i=0;i<len;i++){
|
||||||
let cargo={
|
let cargo={
|
||||||
"goodsCode": "",
|
"goodsCode": "",
|
||||||
@ -1606,45 +1651,67 @@ methods: {
|
|||||||
this.form.cargoList.push(cargo);
|
this.form.cargoList.push(cargo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else{
|
else{
|
||||||
let newList=[];
|
let newList=[];
|
||||||
for(let i=0;i<this.form.parcelQty;i++){
|
let incQty=0;
|
||||||
newList.push(this.form.cargoList[i])
|
let zeroItem=null;
|
||||||
|
for(let i=0;i<this.form.cargoList.length;i++){
|
||||||
|
let item=this.form.cargoList[i];
|
||||||
|
// 忽略未填写体积的数据
|
||||||
|
if(item.length==0&&item.width==0&&item.height==0){
|
||||||
|
zeroItem=item;
|
||||||
|
zeroItem.cargoQty=1;
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((incQty+parseInt(item.cargoQty))<this.form.parcelQty){
|
||||||
|
incQty = incQty+parseInt(item.cargoQty);
|
||||||
|
newList.push(item)
|
||||||
|
}else{
|
||||||
|
item.cargoQty=this.form.parcelQty-incQty;
|
||||||
|
newList.push(item)
|
||||||
|
incQty = incQty+parseInt(item.cargoQty);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 补足数量
|
||||||
|
let bzLen=this.form.parcelQty-incQty;
|
||||||
|
for(let i=0;i<bzLen;i++){
|
||||||
|
let newItem=Object.assign({},zeroItem);
|
||||||
|
newList.push(newItem);
|
||||||
|
}
|
||||||
|
|
||||||
this.form.cargoList=newList;
|
this.form.cargoList=newList;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
this.form.cargoList=[];
|
this.form.cargoList=[];
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
handleCargoQtyChange(){
|
||||||
onGoodsChange_old(goodsName){
|
this.handleInitGenGoods();
|
||||||
if(goodsName&& goodsName!='') {
|
|
||||||
// 旧map
|
|
||||||
let nameOldMap = new Map();
|
|
||||||
if(this.form.cargoList!=null&& this.form.cargoList.length>0){
|
|
||||||
this.form.cargoList.forEach(item=>{
|
|
||||||
nameOldMap[item.goodsName]=item;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!(goodsName in nameOldMap)){
|
|
||||||
let cargo={
|
|
||||||
"goodsCode": goodsName,
|
|
||||||
"goodsName": goodsName,
|
|
||||||
"cargoQty": 1,
|
|
||||||
"length": 0,
|
|
||||||
"width": 0,
|
|
||||||
"height": 0,
|
|
||||||
"volume": 0,
|
|
||||||
}
|
|
||||||
this.form.cargoList.push(cargo);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.handleCalcQty();
|
|
||||||
this.handleCalcVolume();
|
this.handleCalcVolume();
|
||||||
}
|
},
|
||||||
|
deleteGoodsItem(row,index){
|
||||||
|
this.$confirm('确定删除?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
// let newList = this.form.cargoList.filter(item => item.goodsName !== row.goodsName);
|
||||||
|
// this.form.cargoList=newList;
|
||||||
|
console.log(index);
|
||||||
|
this.form.cargoList.splice(index,1)
|
||||||
|
this.handleCalcVolume();
|
||||||
|
}).catch(() => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
copyGoodsItem(row,index){
|
||||||
|
let newItem = Object.assign({},row);
|
||||||
|
newItem.cargoQty=1;
|
||||||
|
this.form.cargoList.splice(index+1, 0, newItem);
|
||||||
|
// this.form.cargoList.push(newItem);
|
||||||
|
handleCargoQtyChange();
|
||||||
},
|
},
|
||||||
showLocalTime(){
|
showLocalTime(){
|
||||||
|
|
||||||
|
|||||||
@ -7,14 +7,19 @@
|
|||||||
<div class="form-group-title"><span class="title">{{ $t('发货信息') }}</span></div>
|
<div class="form-group-title"><span class="title">{{ $t('发货信息') }}</span></div>
|
||||||
</template>
|
</template>
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
|
|
||||||
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
|
||||||
<el-col :span="6">
|
|
||||||
|
|
||||||
|
<!-- 运单录入 -->
|
||||||
|
<el-col :span="6" v-if="action=='add'">
|
||||||
<el-form-item :label="$t('发货时间')" prop="sendDate">
|
<el-form-item :label="$t('发货时间')" prop="sendDate">
|
||||||
<el-input v-model="form.sendDate" placeholder="" readonly="" disabled />
|
<el-input v-model="form.sendDate" placeholder="" readonly="" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="18">
|
<el-col :span="18" v-if="action=='add'">
|
||||||
<el-form-item label="运单号" prop="billCode" >
|
<el-form-item label="运单号" prop="billCode" >
|
||||||
<div style="display:inline-flex">
|
<div style="display:inline-flex">
|
||||||
<div>
|
<div>
|
||||||
@ -27,6 +32,33 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<!-- 运单录入 end -->
|
||||||
|
|
||||||
|
<!-- 运单修改 -->
|
||||||
|
<el-col :span="8" v-if="action=='modify'">
|
||||||
|
<el-form-item label="运单号" prop="billCode" >
|
||||||
|
<div style="display:inline-flex">
|
||||||
|
<div>
|
||||||
|
<el-input v-model="form.billCode" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" style="font-weight:600;color:black" >
|
||||||
|
<i slot="suffix" class="iconfont"></i>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
<!-- <div style="padding-left:5px"> <el-checkbox style="font-size:400;margin-right:10px;font-size:10px" @change="checked=>handleBillCodeChange(checked)"><span style="font-size:10px">电子主单</span></el-checkbox></div> -->
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="6" v-if="action=='modify'">
|
||||||
|
<el-form-item :label="$t('发货时间')" prop="sendDate">
|
||||||
|
<el-input v-model="form.sendDate" placeholder="" readonly="" disabled />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="10" v-if="action=='modify'">
|
||||||
|
</el-col>
|
||||||
|
<!-- 运单修改 end -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="目的国" prop="reciever.country">
|
<el-form-item label="目的国" prop="reciever.country">
|
||||||
@ -805,6 +837,7 @@ data() {
|
|||||||
loading: true,
|
loading: true,
|
||||||
isNeedSave:false,
|
isNeedSave:false,
|
||||||
triggerCount:0,
|
triggerCount:0,
|
||||||
|
action:null,
|
||||||
// 表单参数
|
// 表单参数
|
||||||
form: {},
|
form: {},
|
||||||
timer:null,
|
timer:null,
|
||||||
@ -957,6 +990,8 @@ data() {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
computed:{
|
||||||
|
},
|
||||||
watch: {
|
watch: {
|
||||||
"form.reciever.province":{
|
"form.reciever.province":{
|
||||||
handler (newValue, oldValue) {
|
handler (newValue, oldValue) {
|
||||||
@ -972,13 +1007,13 @@ data() {
|
|||||||
},
|
},
|
||||||
deep: true
|
deep: true
|
||||||
},
|
},
|
||||||
"form.volumeWeight":{
|
// "form.volumeWeight":{
|
||||||
handler (newValue, oldValue) {
|
// handler (newValue, oldValue) {
|
||||||
this.reCalcSettlementWeight();
|
// this.reCalcSettlementWeight();
|
||||||
},
|
// },
|
||||||
immediate: false,
|
// immediate: false,
|
||||||
deep: true
|
// deep: true
|
||||||
},
|
// },
|
||||||
"form.billWeight":{
|
"form.billWeight":{
|
||||||
handler (newValue, oldValue) {
|
handler (newValue, oldValue) {
|
||||||
this.reCalcSettlementWeight();
|
this.reCalcSettlementWeight();
|
||||||
@ -1031,6 +1066,7 @@ updated(){
|
|||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.billCode=this.$route.query.billCode;
|
this.billCode=this.$route.query.billCode;
|
||||||
|
this.action=this.$route.query.action;
|
||||||
this.initData();
|
this.initData();
|
||||||
this.initTanexPrinterSdk();
|
this.initTanexPrinterSdk();
|
||||||
|
|
||||||
@ -1230,11 +1266,8 @@ methods: {
|
|||||||
},
|
},
|
||||||
initData() {
|
initData() {
|
||||||
this.reset();
|
this.reset();
|
||||||
this.form.sendDate = parseTime(new Date());
|
|
||||||
this.form.sendSiteCode=this.$store.getters.ownerSiteCode;
|
|
||||||
this.form.sendSiteName=this.$store.getters.ownerSiteName;
|
|
||||||
console.log(this.form.sendSiteName)
|
|
||||||
|
|
||||||
|
// console.log(this.form.sendSiteName)
|
||||||
if(this.billCode !=null) {
|
if(this.billCode !=null) {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
getWaybillDetail(this.billCode).then(response => {
|
getWaybillDetail(this.billCode).then(response => {
|
||||||
@ -1243,12 +1276,15 @@ methods: {
|
|||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
|
||||||
this.isNeedSave=true;
|
this.isNeedSave=true;
|
||||||
|
this.form.printTypeCheckList=[1,5]
|
||||||
|
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
// console.log(this.dict.type.emis_declare_mode[0]);
|
|
||||||
|
|
||||||
// this.form.customsEclaration = this.dict.type.emis_declare_mode[0].value;
|
this.form.sendDate = parseTime(new Date());
|
||||||
|
this.form.sendSiteCode=this.$store.getters.ownerSiteCode;
|
||||||
|
this.form.sendSiteName=this.$store.getters.ownerSiteName;
|
||||||
|
|
||||||
this.form.customsEclaration='1';
|
this.form.customsEclaration='1';
|
||||||
this.form.customsClear='1';
|
this.form.customsClear='1';
|
||||||
// this.form.pickupMethod='2';
|
// this.form.pickupMethod='2';
|
||||||
@ -1553,6 +1589,8 @@ methods: {
|
|||||||
|
|
||||||
},
|
},
|
||||||
calcBillFee(){
|
calcBillFee(){
|
||||||
|
console.log("11111=>"+this.isNeedSave)
|
||||||
|
|
||||||
// 初始化不计算
|
// 初始化不计算
|
||||||
if(!this.isNeedSave){
|
if(!this.isNeedSave){
|
||||||
return;
|
return;
|
||||||
@ -1610,9 +1648,14 @@ methods: {
|
|||||||
if(this.form.parcelQty>0){
|
if(this.form.parcelQty>0){
|
||||||
|
|
||||||
let currentParcelQty = 0;
|
let currentParcelQty = 0;
|
||||||
|
if(this.form.cargoList){
|
||||||
|
this.form.cargoList=[];
|
||||||
|
}
|
||||||
|
|
||||||
this.form.cargoList.forEach(item=>{
|
this.form.cargoList.forEach(item=>{
|
||||||
currentParcelQty = currentParcelQty+parseInt(item.cargoQty);
|
currentParcelQty = currentParcelQty+parseInt(item.cargoQty);
|
||||||
});
|
});
|
||||||
|
|
||||||
// 新件数大于
|
// 新件数大于
|
||||||
if(this.form.parcelQty>currentParcelQty){
|
if(this.form.parcelQty>currentParcelQty){
|
||||||
let len=this.form.parcelQty-currentParcelQty;
|
let len=this.form.parcelQty-currentParcelQty;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user