This commit is contained in:
linfso 2024-05-29 09:59:04 +08:00
parent 5bd444343c
commit 6903713973
4 changed files with 73 additions and 30 deletions

View File

@ -174,6 +174,7 @@
</el-table-column>
<el-table-column label="使用网点" align="center" prop="useSiteName" width="100" />
<el-table-column label="客户名称" align="center" prop="customerName" width="160" :show-overflow-tooltip="true" />
<el-table-column label="所属线路" align="center" prop="transLine" width="100" />
<el-table-column label="产品类型" align="center" prop="prodName" width="100" />
<el-table-column label="最低价格" align="center" prop="leastPrice" width="100" />

View File

@ -174,6 +174,8 @@
</el-table-column>
<el-table-column label="使用网点" align="center" prop="useSiteName" width="100" />
<el-table-column label="客户名称" align="center" prop="customerName" width="160" :show-overflow-tooltip="true" />
<el-table-column label="所属线路" align="center" prop="transLine" width="100" />
<el-table-column label="产品类型" align="center" prop="prodName" width="100" />
<el-table-column label="最低价格" align="center" prop="leastPrice" width="100" />

View File

@ -371,7 +371,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="总件数" prop="parcelQty" label-width="70px">
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleInitGenGoods" @keyup.enter.native="handleInitGenGoods" placeholder="" />
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleCargoQtyChangeDebounce" @keyup.enter.native="handleCargoQtyChangeDebounce" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="12">
@ -414,22 +414,22 @@
</el-table-column>
<el-table-column prop="length" label="长(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.length" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.length" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="width" label="宽(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.width" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.width" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="height" label="高(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.height" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.height" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="cargoQty" label="件数" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.cargoQty" @input="(val)=>handleCargoQtyChange(scope.row)" @keyup.enter.native="(val)=>handleCargoQtyChange(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.cargoQty" @blur="(val)=>handleCargoQtyChangeDebounce(scope.row)" @keyup.enter.native="(val)=>handleCargoQtyChange(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="volume" label="体积(m³)" align="center" width="80">
@ -742,6 +742,7 @@
import { realMatchWaybill,getTotalAvailablePag } from "@/api/emis/emisCommon";
import { getWaybillDetail,realSubmitOrder,calcWaybillFee,calcSetteldWeight,calcVolumeWeight} from "@/api/emis/emisWaybill";
import { parseTime } from "@/utils/custom";
import { debounce } from 'throttle-debounce'
import { getDestSite } from "@/api/emis/emisDestination";
import DestinationPicker from '@/views/emis/EmisBaseTools/DestinationPicker.vue';
@ -761,17 +762,11 @@ import CountryPicker1 from '@/views/emis/EmisBaseTools/CountryPicker.vue';
import ProvincePicker1 from '@/views/emis/EmisBaseTools/ProvincePicker.vue';
import CityPicker1 from '@/views/emis/EmisBaseTools/CityPicker.vue';
import DistrictPicker1 from '@/views/emis/EmisBaseTools/DistrictPicker.vue';
// import TownPicker1 from '@/views/emis/EmisBaseTools/TownPicker.vue';
import CountryPicker2 from '@/views/emis/EmisBaseTools/CountryPicker.vue';
import ProvincePicker2 from '@/views/emis/EmisBaseTools/ProvincePicker.vue';
import CityPicker2 from '@/views/emis/EmisBaseTools/CityPicker.vue';
import DistrictPicker2 from '@/views/emis/EmisBaseTools/DistrictPicker.vue';
// import TownPicker2 from '@/views/emis/EmisBaseTools/TownPicker.vue';
// import CustomerPicker0 from '@/views/emis/EmisBaseTools/CustomerPicker.vue';
// import CustomerPicker1 from '@/views/emis/EmisBaseTools/CustomerPicker.vue';
// import CustomerPicker2 from '@/views/emis/EmisBaseTools/CustomerPicker.vue';
import GoodsSimplePicker from '@/views/emis/EmisBaseTools/GoodsSimplePicker.vue';
import GoodsMultiplePicker from '@/views/emis/EmisBaseTools/GoodsMultiplePicker.vue';
@ -1533,6 +1528,11 @@ methods: {
});
}
},
handleCalcVolumeDebounce(row){
// 控制触发频率
debounce(250, this.handleCalcVolume(row))
},
handleCalcVolume(row){
// 初始化不计算
if(!this.isNeedSave){
@ -1758,13 +1758,19 @@ methods: {
else{
let newList=[];
let incQty=0;
let zeroItem=null;
let zeroItem={
"goodsCode": "",
"goodsName": "",
"cargoQty": 1,
"length": 0,
"width": 0,
"height": 0,
"volume": 0,
};
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;
}
@ -1780,9 +1786,17 @@ methods: {
}
// 补足数量
let bzLen=this.form.parcelQty-incQty;
for(let i=0;i<bzLen;i++){
let newItem=Object.assign({},zeroItem);
newList.push(newItem);
if(bzLen>0){
if(newList.length>=10 || this.form.parcelQty>=10){
let newItem=Object.assign({},zeroItem);
newItem.cargoQty=bzLen;
newList.push(newItem);
}else{
for(let i=0;i<bzLen;i++){
let newItem=Object.assign({},zeroItem);
newList.push(newItem);
}
}
}
this.form.cargoList=newList;
@ -1791,8 +1805,11 @@ methods: {
this.form.cargoList=[];
}
},
handleCargoQtyChangeDebounce(row){
// 控制触发频率
debounce(250, this.handleCargoQtyChange(row))
},
handleCargoQtyChange(row){
this.handleInitGenGoods();
this.handleCalcVolume(row);
},

View File

@ -371,7 +371,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="总件数" prop="parcelQty" label-width="70px">
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleInitGenGoods" @keyup.enter.native="handleInitGenGoods" placeholder="" />
<el-input v-model="form.parcelQty" style="text-align: right;" @blur="handleCargoQtyChangeDebounce" @keyup.enter.native="handleCargoQtyChangeDebounce" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="12">
@ -414,22 +414,22 @@
</el-table-column>
<el-table-column prop="length" label="长(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.length" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.length" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="width" label="宽(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.width" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.width" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="height" label="高(cm)" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.height" @input="(val)=>handleCalcVolume(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.height" @input="(val)=>handleCalcVolumeDebounce(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="cargoQty" label="件数" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.cargoQty" @input="(val)=>handleCargoQtyChange(scope.row)" @keyup.enter.native="(val)=>handleCargoQtyChange(scope.row)" size="mini" placeholder=""></el-input>
<el-input v-model="scope.row.cargoQty" @blur="(val)=>handleCargoQtyChangeDebounce(scope.row)" @keyup.enter.native="(val)=>handleCargoQtyChange(scope.row)" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="volume" label="体积(m³)" align="center" width="80">
@ -742,6 +742,7 @@
import { realMatchWaybill,getTotalAvailablePag } from "@/api/emis/emisCommon";
import { getWaybillDetail,realSubmitOrder,calcWaybillFee,calcSetteldWeight,calcVolumeWeight} from "@/api/emis/emisWaybill";
import { parseTime } from "@/utils/custom";
import { debounce } from 'throttle-debounce'
import { getDestSite } from "@/api/emis/emisDestination";
import DestinationPicker from '@/views/emis/EmisBaseTools/DestinationPicker.vue';
@ -1533,6 +1534,11 @@ methods: {
});
}
},
handleCalcVolumeDebounce(row){
// 控制触发频率
debounce(250, this.handleCalcVolume(row))
},
handleCalcVolume(row){
// 初始化不计算
if(!this.isNeedSave){
@ -1758,13 +1764,19 @@ methods: {
else{
let newList=[];
let incQty=0;
let zeroItem=null;
let zeroItem={
"goodsCode": "",
"goodsName": "",
"cargoQty": 1,
"length": 0,
"width": 0,
"height": 0,
"volume": 0,
};
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;
}
@ -1780,9 +1792,17 @@ methods: {
}
// 补足数量
let bzLen=this.form.parcelQty-incQty;
for(let i=0;i<bzLen;i++){
let newItem=Object.assign({},zeroItem);
newList.push(newItem);
if(bzLen>0){
if(newList.length>=10 || this.form.parcelQty>=10){
let newItem=Object.assign({},zeroItem);
newItem.cargoQty=bzLen;
newList.push(newItem);
}else{
for(let i=0;i<bzLen;i++){
let newItem=Object.assign({},zeroItem);
newList.push(newItem);
}
}
}
this.form.cargoList=newList;
@ -1791,8 +1811,11 @@ methods: {
this.form.cargoList=[];
}
},
handleCargoQtyChangeDebounce(row){
// 控制触发频率
debounce(250, this.handleCargoQtyChange(row))
},
handleCargoQtyChange(row){
this.handleInitGenGoods();
this.handleCalcVolume(row);
},