Merge pull request '运单查询,付款方式多选' (#210) from develop into master

Reviewed-on: http://git.xdadan.loc/tanex/emis-frontend/pulls/210
This commit is contained in:
wuteng 2026-03-06 16:50:10 +08:00
commit 7294b70615
5 changed files with 143 additions and 13 deletions

View File

@ -0,0 +1,122 @@
<template>
<!-- collapse-tags -->
<el-select multiple filterable clearable ref="selectRef" v-model="svalue" :placeholder="placeholder" @blur="onBlur"
@focus="onFocus" style="width:100%" class="mutiSelect" :popper-append-to-body="false" @change="onChange">
<div style="padding: 0px 8px 0 20px;width:100%;line-height:34px;display:inline-flex">
<div style="width:50%">
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
</div>
<div style="width:50%;text-align:right">
<el-button type="primary" size="mini" style="padding:2px 10px" @click="hideMe">确定</el-button>
</div>
</div>
<el-checkbox-group v-model="svalue">
<el-option v-for="item in optionItems" :key="item.value" :label="item.label" :value="item.value">
<el-checkbox style="pointer-events: none" :key="item.value" :label="item.value">{{ item.label }}</el-checkbox>
</el-option>
<!-- style="pointer-events: none" -->
</el-checkbox-group>
</el-select>
<!-- style="width:100%" multiple-->
</template>
<script>
import emitter from 'element-ui/src/mixins/emitter';
export default {
name: "TransLineMultiplePicker",
mixins: [emitter],
props: {
value: {
type: [String],
required: false
},
transLineCode: {
type: String,
required: false
},
placeholder: {
type: String,
required: false
},
isInitiated: {
type: [Boolean, String],
required: false,
default: false
}
},
dicts: ['emis_payment_type'],
data() {
return {
optionItems: [],
svalue: [],
isFistInit: true,
checkAll: false, //招标阶段 是否全选
isIndeterminate: false, //全选复选框标识
};
},
watch: {
value(newVal) {
if (this.value) {
this.svalue = this.value.split(',');
}
},
transLineCode(newVal) {
this.queryData();
}
},
created() {
this.queryData();
},
methods: {
hideMe() {
this.$refs.selectRef.blur();
},
onFocus() {
this.searchLineCode = null;
},
onBlur(val) {
this.$emit("input", this.svalue ? this.svalue.join(',') : null);
this.dispatch('ElFormItem', 'el.form.blur', [this.svalue]);
},
handleCheckAllChange(isCheckAll) {
if (isCheckAll) {
const data = this.optionItems.map(item => {
return item.value
})
this.svalue = data
} else {
this.svalue = [];
}
this.$emit("input", this.svalue ? this.svalue.join(',') : null);
this.isIndeterminate = false;
},
onChange(val) {
const checkedCount = this.svalue.length;
this.checkAll = checkedCount === this.optionItems.length;
this.isIndeterminate = checkedCount > 0 && checkedCount < this.optionItems.length;
// this.$emit("input", this.svalue);
this.$emit("input", this.svalue ? this.svalue.join(',') : null);
let itemSelData = []
this.optionItems.forEach(item => {
if (item.value === this.svalue) {
itemSelData.push(item);
}
});
this.$emit("onChange", itemSelData);
this.dispatch('ElFormItem', 'el.form.change', [this.svalue]);
},
queryData() {
this.optionItems = this.dict.type.emis_payment_type
},
}
};
</script>
<style scoped>
.mutiSelect :deep .el-select-dropdown.is-multiple .el-select-dropdown__item.selected::after {
display: none;
}
</style>

View File

@ -38,14 +38,15 @@
<AllMonthpayAccountPicker v-model="queryParams.custNo" ></AllMonthpayAccountPicker>
</el-form-item>
<el-form-item label="付款方式" prop="paymentType" >
<el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<!-- <el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-select> -->
<PaymentTypeMultipleAllPicker v-model="queryParams.paymentType" ></PaymentTypeMultipleAllPicker>
</el-form-item>
</el-col>
@ -680,7 +681,7 @@ import TransLineAllPicker from '@/views/emis/EmisBaseTools/TransLineAllPicker.vu
import TransProductAllPicker from '@/views/emis/EmisBaseTools/TransProductAllPicker.vue'
import AllMonthpayAccountPicker from '@/views/emis/EmisBaseTools/AllMonthpayAccountPicker.vue';
import EmisMoneyUserPicker from '@/views/emis/EmisBaseTools/EmisMoneyUserPicker.vue';
import PaymentTypeMultipleAllPicker from '@/views/emis/EmisBaseTools/PaymentTypeMultipleAllPicker.vue';
export default {
name: "CenterWaybillList",
// name: "DispatchWaybillList",
@ -709,7 +710,7 @@ export default {
TransProductAllPicker,
AllMonthpayAccountPicker,
EmisMoneyUserPicker,
PaymentTypeMultipleAllPicker,
},
dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',

View File

@ -54,14 +54,15 @@
<AllMonthpayAccountPicker v-model="queryParams.custNo" ></AllMonthpayAccountPicker>
</el-form-item>
<el-form-item label="付款方式" prop="paymentType" >
<el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<!-- <el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-select> -->
<PaymentTypeMultipleAllPicker v-model="queryParams.paymentType" ></PaymentTypeMultipleAllPicker>
</el-form-item>
</el-col>
@ -648,6 +649,7 @@ import TransLineAllPicker from '@/views/emis/EmisBaseTools/TransLineAllPicker.vu
import TransProductAllPicker from '@/views/emis/EmisBaseTools/TransProductAllPicker.vue'
import AllMonthpayAccountPicker from '@/views/emis/EmisBaseTools/AllMonthpayAccountPicker.vue';
import EmisMoneyUserPicker from '@/views/emis/EmisBaseTools/EmisMoneyUserPicker.vue';
import PaymentTypeMultipleAllPicker from '@/views/emis/EmisBaseTools/PaymentTypeMultipleAllPicker.vue';
export default {
// name: "SendWaybillList",
@ -677,6 +679,7 @@ export default {
TransProductAllPicker,
AllMonthpayAccountPicker,
EmisMoneyUserPicker,
PaymentTypeMultipleAllPicker
},
dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',

View File

@ -57,14 +57,15 @@
<AllMonthpayAccountPicker v-model="queryParams.custNo" @onChange="onCustNoChange"></AllMonthpayAccountPicker>
</el-form-item>
<el-form-item label="付款方式" prop="paymentType" >
<el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<!-- <el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-select> -->
<PaymentTypeMultipleAllPicker v-model="queryParams.paymentType" ></PaymentTypeMultipleAllPicker>
</el-form-item>
</el-col>
@ -662,7 +663,7 @@ import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
import { formatSearchStr,deepClone } from '@/utils/index'
import clip from '@/utils/clipboard'
import EmisMoneyUserPicker from '@/views/emis/EmisBaseTools/EmisMoneyUserPicker.vue';
import PaymentTypeMultipleAllPicker from '@/views/emis/EmisBaseTools/PaymentTypeMultipleAllPicker.vue';
export default {
name: "SendWaybillList",
// name: "DispatchWaybillList",
@ -697,6 +698,7 @@ export default {
AllMonthpayAccountPicker,
TransProductMultipleAllPicker,
EmisMoneyUserPicker,
PaymentTypeMultipleAllPicker
},
dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',

View File

@ -60,14 +60,15 @@
<AllMonthpayAccountPicker v-model="queryParams.custNo" @onChange="onCustNoChange"></AllMonthpayAccountPicker>
</el-form-item>
<el-form-item label="付款方式" prop="paymentType" >
<el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<!-- <el-select clearable v-model="queryParams.paymentType" placeholder="请选择">
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-select> -->
<PaymentTypeMultipleAllPicker v-model="queryParams.paymentType" ></PaymentTypeMultipleAllPicker>
</el-form-item>
</el-col>
@ -667,7 +668,7 @@ import TransProductMultipleAllPicker from "../EmisBaseTools/TransProductMultiple
import AllMonthpayAccountPicker from '@/views/emis/EmisBaseTools/AllMonthpayAccountPicker.vue';
import EmisMoneyUserPicker from '@/views/emis/EmisBaseTools/EmisMoneyUserPicker.vue';
import PaymentTypeMultipleAllPicker from '@/views/emis/EmisBaseTools/PaymentTypeMultipleAllPicker.vue';
export default {
name: "SendWaybillListNew",
// name: "DispatchWaybillList",
@ -700,7 +701,8 @@ export default {
TransProductAllPicker,
AllMonthpayAccountPicker,
TransProductMultipleAllPicker
,EmisMoneyUserPicker
,EmisMoneyUserPicker,
PaymentTypeMultipleAllPicker
},
dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',