This commit is contained in:
linfso 2025-06-17 09:34:07 +08:00
parent 0b9eb7b200
commit 33d714834c
4 changed files with 94 additions and 55 deletions

View File

@ -3,11 +3,11 @@
<template v-for="(item, index) in options">
<template v-if="values.includes(item.value)">
<span
v-if="item.raw.listClass == 'default' || item.raw.listClass == ''"
v-if="item.raw.listClass == 'default' || item.raw.listClass == '' || !isNeedListClass"
:key="item.value"
:index="index"
:class="item.raw.cssClass"
>{{ item.label }}</span>
>{{ item.label }} {{ sepChar!=null?sepChar:'' }}</span>
<el-tag
v-else
:disable-transitions="true"
@ -24,6 +24,8 @@
</template>
<script>
import { type } from 'jquery';
export default {
name: "DictTag",
props: {
@ -32,6 +34,14 @@ export default {
default: null,
},
value: [Number, String, Array],
sepChar:{
type:String,
default: null,
},
isNeedListClass:{
type:Boolean,
default:true
}
},
computed: {
values() {

View File

@ -240,6 +240,9 @@ import EmisMonthpayAccountPicker from '@/views/emis/EmisBaseTools/EmisMonthpayAc
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker';
import AllMonthpayAccountPicker from '@/views/emis/EmisBaseTools/AllMonthpayAccountPicker.vue';
import EmpNamePicker1 from '@/views/emis/EmisBaseTools/EmpNamePicker.vue';
import EmpNamePicker2 from '@/views/emis/EmisBaseTools/EmpNamePicker.vue';
export default {
name: "MoneyPanel",

View File

@ -7,7 +7,6 @@
v-model="queryParams.code"
:placeholder="$t('供应商编码')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="供应商名称" prop="name" label-width="90px" >
@ -15,7 +14,6 @@
v-model="queryParams.name"
:placeholder="$t('供应商名称')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="英文简称" prop="nameEn">
@ -23,7 +21,6 @@
v-model="queryParams.nameEn"
:placeholder="$t('英文简称')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="结算类型" prop="settledType">
@ -33,7 +30,7 @@
</el-select>
</el-form-item>
<el-form-item label="运输方式" prop="transType">
<el-select v-model="queryParams.transType" placeholder="运输方式" clearable filterable @change="handleQuery">
<el-select v-model="queryParams.transType" placeholder="运输方式" clearable filterable >
<el-option
v-for="item in dict.type.emis_biz_shipping_method"
v-bind:key="item.value"
@ -43,6 +40,17 @@
</el-select>
</el-form-item>
<el-form-item label="费用类型" prop="feeItemRel">
<el-select v-model="queryParams.feeItemRel" placeholder="运输方式" clearable filterable>
<el-option
v-for="item in dict.type.emis_cost_fee_type"
v-bind:key="item.value"
v-bind:label="item.label"
v-bind:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
v-model="queryParams.remark"
@ -66,6 +74,9 @@
border
size="mini"
ref="refTable"
storageName="emisSupplierList_main_list"
:data="emisSupplierList"
:showSearch.sync="showSearch"
:queryParams="queryParams"
@ -141,9 +152,18 @@
<el-tag v-if="scope.row.settledType=='2'" type="warning">月结</el-tag>
</template>
</el-table-column>
<el-table-column label="运输方式" align="center" prop="transType" width="80" >
<el-table-column label="运输方式" align="center" prop="transType" width="80" :show-overflow-tooltip="true">
<template slot-scope="scope">
<dict-tag :options="dict.type.emis_biz_shipping_method" :value="scope.row.transType"/>
<div style="display: inline-flex;">
<dict-tag v-if="scope.row.feeItemRel&&scope.row.transType!=''" :options="dict.type.emis_biz_shipping_method" :value="scope.row.transType.split(',')" :isNeedListClass="false" sepChar=","/>
</div>
</template>
</el-table-column>
<el-table-column label="费用类型" align="center" prop="feeItemRel" width="130" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="display: inline-flex;">
<dict-tag v-if="scope.row.feeItemRel&&scope.row.feeItemRel!=''" :options="dict.type.emis_cost_fee_type" :value="scope.row.feeItemRel.split(',')" :isNeedListClass="false" sepChar=","/>
</div>
</template>
</el-table-column>
<!-- <el-table-column :label="$t('业务网点')" align="center" prop="bizSite" min-width="100" /> -->
@ -175,8 +195,7 @@ import EmisSiteSimplePicker from '@/views/emis/EmisBaseTools/EmisSiteSimplePicke
export default {
name: "EmisSupplier",
components: { elDateSimplePicker,emisSupplierForm ,EmisSiteSimplePicker},
dicts: ['emis_biz_shipping_method'
],
dicts: ['emis_biz_shipping_method','emis_cost_fee_type'],
data() {
return {
// 遮罩层

View File

@ -447,7 +447,58 @@ export default {
this.form.supplierName=null;
return;
}
this.form.supplierName=item.name;
// 如果有费用录入,则不允许修改
if(this.form.feeItemList&&this.form.feeItemList.length>0&&this.form.supplierCode==item.code){
return;
}
// 获取供应商费用关联信息
let feeItemRelStr=item.feeItemRel;
// 获取运输类型对应的费用类型 // 供应商对应的费用类型
this.form.feeItemList=[];
// 根据供应商对应的费用类型来判断
if(feeItemRelStr){
let feeTypeArr = feeItemRelStr.split(',');
this.dict.type.emis_cost_fee_type.forEach(itemType => {
if(feeTypeArr.includes(itemType.value)){
let feeItem={
feeType:itemType.value,
price:null,
fee:null,
currency:'CNY'
}
this.form.feeItemList.push(feeItem);
}
});
}
else{
// for(let i=0;i<this.dict.type.emis_trans_feeitem_rel.length;i++ ){
// let item=this.dict.type.emis_trans_feeitem_rel[i];
// if(item.label == this.form.transType){
// let feeTypeArr = item.value.split(',');
// this.dict.type.emis_cost_fee_type.forEach(itemType => {
// if(feeTypeArr.includes(itemType.value)){
// let feeItem={
// feeType:itemType.value,
// price:null,
// fee:null,
// currency:'CNY'
// }
// this.form.feeItemList.push(feeItem);
// }
// });
// break;
// }
// }
}
},
async addBillToApply(){
this.form.billRelList=[];
@ -511,51 +562,7 @@ export default {
}
// 获取供应商费用关联信息
let feeItemRelStr=null;
let supplier=getEmisSupplierByCode(this.form.supplierCode);
if(supplier!=null){
feeItemRelStr=supplier.feeItemRel;
}
// 获取运输类型对应的费用类型 // 供应商对应的费用类型
this.form.feeItemList=[];
// 根据供应商对应的费用类型来判断
if(feeItemRelStr){
let feeTypeArr = feeItemRelStr.split(',');
this.dict.type.emis_cost_fee_type.forEach(itemType => {
if(feeTypeArr.includes(itemType.value)){
let feeItem={
feeType:itemType.value,
price:null,
fee:null,
currency:'CNY'
}
this.form.feeItemList.push(feeItem);
}
});
}
else{
for(let i=0;i<this.dict.type.emis_trans_feeitem_rel.length;i++ ){
let item=this.dict.type.emis_trans_feeitem_rel[i];
if(item.label == this.form.transType){
let feeTypeArr = item.value.split(',');
this.dict.type.emis_cost_fee_type.forEach(itemType => {
if(feeTypeArr.includes(itemType.value)){
let feeItem={
feeType:itemType.value,
price:null,
fee:null,
currency:'CNY'
}
this.form.feeItemList.push(feeItem);
}
});
break;
}
}
}
this.loading = false;
},