操作员接口参数调整、运费计算参数调整

This commit is contained in:
wuteng 2025-07-17 10:43:25 +08:00
parent 0cedce5530
commit 0dcb21e552
4 changed files with 59 additions and 14 deletions

View File

@ -162,7 +162,7 @@
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<TanexPrinterPanel ref="tanexPrinter" :isShowPinters="true" :isShowTpl="true" :isShowSubBillRange="true" @onPrint="handleBatchPrint"></TanexPrinterPanel> <TanexPrinterBatchPanel ref="tanexPrinter" :isShowPinters="true" :isShowTpl="true" :isShowSubBillRange="true" @onPrint="handleBatchPrint"></TanexPrinterBatchPanel>
</el-col> </el-col>
</el-row> </el-row>
@ -293,11 +293,13 @@ import ProblemTypePicker from '@/views/emis/EmisBaseTools/ProblemTypePicker.vue'
import TanexPrinterPanel from '@/views/emis/EmisBaseTools/TanexPrinterPanel.vue'; import TanexPrinterPanel from '@/views/emis/EmisBaseTools/TanexPrinterPanel.vue';
import { formatSearchStr,deepClone } from '@/utils/index' import { formatSearchStr,deepClone } from '@/utils/index'
import {timeDiffTime,timeFormat} from '@/utils/dateUtils' import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
import TanexPrinterBatchPanel from "../EmisBaseTools/TanexPrinterBatchPanel.vue";
export default { export default {
name: "WaybillIsPrinted", name: "WaybillIsPrinted",
components: { components: {
TanexPrinterPanel, TanexPrinterPanel,
TanexPrinterBatchPanel,
elDateAdvPicker, elDateAdvPicker,
emisWaybillForm, emisWaybillForm,
CountryPicker1, CountryPicker1,
@ -577,11 +579,9 @@ export default {
// batchPrint(orderList,tplCode,orderDetailList) // batchPrint(orderList,tplCode,orderDetailList)
if(printCnt){ if(printCnt){
console.log("====printCnt==>",printCnt)
for(let i=0; i<printCnt; i++){ for(let i=0; i<printCnt; i++){
this.$refs.tanexPrinter.batchPrint(orderList,null,this.currentSelection); this.$refs.tanexPrinter.batchPrint(orderList,null,this.currentSelection);
} }
}else{ }else{
this.$refs.tanexPrinter.batchPrint(orderList,null,this.currentSelection); this.$refs.tanexPrinter.batchPrint(orderList,null,this.currentSelection);
} }

View File

@ -113,12 +113,12 @@
</el-col> </el-col>
<el-col :span="6" v-if="form.pickupMethod==2"> <el-col :span="6" v-if="form.pickupMethod==2">
<el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" > <el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" >
<EmisUserSimplePicker0 :placeholder="$t('取件员')" :siteCode="form.sendSiteCode" v-model="form.takePieceEmployeeCode" postCode="RSD" ></EmisUserSimplePicker0> <EmisUserSimplePicker0 :placeholder="$t('取件员')" :siteCode="form.startSiteCode" v-model="form.takePieceEmployeeCode" postCode="RSD" ></EmisUserSimplePicker0>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6" v-if="form.pickupMethod==1"> <el-col :span="6" v-if="form.pickupMethod==1">
<el-form-item :label="$t('操作员')" prop="operateEmployeeCode" > <el-form-item :label="$t('操作员')" prop="operateEmployeeCode" >
<EmisUserSimplePicker1 :placeholder="$t('操作员')" :siteCode="form.sendSiteCode" v-model="form.operateEmployeeCode" postCode="OP" ></EmisUserSimplePicker1> <EmisUserSimplePicker1 :placeholder="$t('操作员')" :siteCode="form.startSiteCode" v-model="form.operateEmployeeCode" postCode="OP" ></EmisUserSimplePicker1>
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -114,7 +114,7 @@
</el-col> </el-col>
<el-col :span="6" v-if="form.pickupMethod==2"> <el-col :span="6" v-if="form.pickupMethod==2">
<el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" > <el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" >
<EmisUserSimplePicker0 :placeholder="$t('取件员')" :siteCode="form.sendSiteCode" v-model="form.takePieceEmployeeCode" postCode="RSD" ></EmisUserSimplePicker0> <EmisUserSimplePicker0 :placeholder="$t('取件员')" :siteCode="form.startSiteCode" v-model="form.takePieceEmployeeCode" postCode="RSD" ></EmisUserSimplePicker0>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6" v-if="form.pickupMethod==1"> <el-col :span="6" v-if="form.pickupMethod==1">
@ -243,7 +243,7 @@
<el-form-item :label="$t('国家地区')" prop="sender.province" > <el-form-item :label="$t('国家地区')" prop="sender.province" >
<div style="display:inline-flex"> <div style="display:inline-flex">
<country-picker1 v-model="form.sender.country" ></country-picker1> <country-picker1 v-model="form.sender.country" ></country-picker1>
<province-picker1 v-model="form.sender.province" :countryCode="form.sender.country" style="margin-left:5px"></province-picker1> <province-picker1 v-model="form.sender.province" :countryCode="form.sender.country" style="margin-left:5px" @onChange="onChangeSenderProvince"></province-picker1>
<city-picker1 v-model="form.sender.city" :parentCode="form.sender.province" style="margin-left:5px"></city-picker1> <city-picker1 v-model="form.sender.city" :parentCode="form.sender.province" style="margin-left:5px"></city-picker1>
<district-picker1 v-model="form.sender.county" :parentCode="form.sender.city" style="margin-left:5px"></district-picker1> <district-picker1 v-model="form.sender.county" :parentCode="form.sender.city" style="margin-left:5px"></district-picker1>
</div> </div>
@ -307,7 +307,7 @@
<el-form-item :label="$t('国家地区')" prop="reciever.province"> <el-form-item :label="$t('国家地区')" prop="reciever.province">
<div style="display:inline-flex"> <div style="display:inline-flex">
<country-picker2 v-model="form.reciever.country" ></country-picker2> <country-picker2 v-model="form.reciever.country" ></country-picker2>
<ProvincePicker2 v-model="form.reciever.province" :countryCode="form.reciever.country" style="margin-left:5px" @onChange="handleCalcDestSite" ></ProvincePicker2> <ProvincePicker2 v-model="form.reciever.province" :countryCode="form.reciever.country" style="margin-left:5px" @onChange="onChangeRecieverProvince" ></ProvincePicker2>
<city-picker2 v-model="form.reciever.city" :parentCode="form.reciever.province" style="margin-left:5px" @onChange="handleCalcDestSite" ></city-picker2> <city-picker2 v-model="form.reciever.city" :parentCode="form.reciever.province" style="margin-left:5px" @onChange="handleCalcDestSite" ></city-picker2>
<district-picker2 v-model="form.reciever.county" :parentCode="form.reciever.city" style="margin-left:5px" @onChange="handleCalcDestSite" ></district-picker2> <district-picker2 v-model="form.reciever.county" :parentCode="form.reciever.city" style="margin-left:5px" @onChange="handleCalcDestSite" ></district-picker2>
</div> </div>
@ -941,6 +941,32 @@ data() {
callback(); callback();
} }
} }
//校验寄件国家地区国家和省份是否匹配
var checkSenderCountryProvince = (rule, value, callback) => {
console.log('value',value, this.form.sender.country , this.senderCountryCode)
if (this.form.sender.country && this.senderCountryCode) {
if (this.form.sender.country != this.senderCountryCode) {
callback(new Error('国家和省份不一致'));
} else {
callback();
}
} else {
callback();
}
}
//校验收件国家地区国家和省份是否匹配
var checkRecieverCountryProvince = (rule, value, callback) => {
console.log('value',value, this.form.reciever.country , this.recieverCountryCode)
if (this.form.reciever.country && this.recieverCountryCode) {
if (this.form.reciever.country != this.recieverCountryCode) {
callback(new Error('国家和省份不一致'));
} else {
callback();
}
} else {
callback();
}
}
return { return {
activeNames:['1','2','3','4'], activeNames:['1','2','3','4'],
exchangeRate:null, exchangeRate:null,
@ -971,7 +997,9 @@ data() {
mainHasCnt:0, mainHasCnt:0,
subHasCnt:0 subHasCnt:0
}, },
//寄件人省份的国家
senderCountryCode:null,
recieverCountryCode:null,
// 表单校验 // 表单校验
rules: { rules: {
billCode: [ billCode: [
@ -991,7 +1019,9 @@ data() {
{ required: true, message: "收货人国家不能为空", trigger: ["blur",'change'] } { required: true, message: "收货人国家不能为空", trigger: ["blur",'change'] }
], ],
province: [ province: [
{ required: true, message: "收货省不能为空", trigger: ["blur",'change'] } { required: true, message: "收货省不能为空", trigger: ["blur", 'change'] }, {
validator: checkRecieverCountryProvince, trigger: ['blur', 'change']
}
], ],
company: [ company: [
{ required: true, message: "收货公司不能为空", trigger: ["blur",'change'] } { required: true, message: "收货公司不能为空", trigger: ["blur",'change'] }
@ -1017,7 +1047,10 @@ data() {
{ required: true, message: "寄件人国家不能为空", trigger: ["blur",'change'] } { required: true, message: "寄件人国家不能为空", trigger: ["blur",'change'] }
], ],
province: [ province: [
{ required: true, message: "寄件省不能为空", trigger: ["blur",'change'] } { required: true, message: "寄件省不能为空", trigger: ["blur",'change'] },{
validator: checkSenderCountryProvince, trigger: ['blur', 'change']
}
], ],
company: [ company: [
{ required: true, message: "寄件公司不能为空", trigger: ["blur",'change'] } { required: true, message: "寄件公司不能为空", trigger: ["blur",'change'] }
@ -1992,7 +2025,6 @@ methods: {
}, },
// 计算目的站点 // 计算目的站点
handleCalcDestSite(){ handleCalcDestSite(){
if(this.form.reciever.country != this.form.destinationCountry){ if(this.form.reciever.country != this.form.destinationCountry){
this.$confirm('收件国和目的国不一致,请调整!', '提示', { this.$confirm('收件国和目的国不一致,请调整!', '提示', {
confirmButtonText: '确认', confirmButtonText: '确认',
@ -2474,6 +2506,19 @@ methods: {
this.form.remark = this.form.remark.replace(/该单为虚拟单:对应主单为[\da-zA-Z]+/g, ''); this.form.remark = this.form.remark.replace(/该单为虚拟单:对应主单为[\da-zA-Z]+/g, '');
} }
} }
},
//寄件省份变化
onChangeSenderProvince(val){
if(val){
this.senderCountryCode = val.countryCode;
}
},
//收件省份变化
onChangeRecieverProvince(val){
if(val){
this.recieverCountryCode = val.countryCode;
}
this.handleCalcDestSite();
} }
} }
}; };

View File

@ -234,7 +234,7 @@
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" > <el-form-item :label="$t('取件员')" prop="takePieceEmployeeCode" >
<EmisUserSimplePicker0 :placeholder="$t('取件员')" v-model="form.takePieceEmployeeCode" postCode="RSD" ></EmisUserSimplePicker0> <EmisUserSimplePicker0 :placeholder="$t('取件员')" v-model="form.takePieceEmployeeCode" postCode="RSD" :siteCode="form.startSiteCode"></EmisUserSimplePicker0>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -251,7 +251,7 @@
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<el-form-item :label="$t('操作员')" prop="operateEmployeeCode" > <el-form-item :label="$t('操作员')" prop="operateEmployeeCode" >
<EmisUserSimplePicker0 :placeholder="$t('操作员')" v-model="form.operateEmployeeCode" postCode="OP" ></EmisUserSimplePicker0> <EmisUserSimplePicker0 :placeholder="$t('操作员')" :siteCode="form.startSiteCode" v-model="form.operateEmployeeCode" postCode="OP" ></EmisUserSimplePicker0>
</el-form-item> </el-form-item>
</el-col> </el-col>