update:搜索key

This commit is contained in:
2026-01-22 11:40:18 +08:00
parent cb2ee815eb
commit 8643ee2a46
3 changed files with 42 additions and 21 deletions

View File

@@ -3,7 +3,7 @@
<el-input <el-input
v-if="item.inputMode === 'input'" v-if="item.inputMode === 'input'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:placeholder="item.disabled && showDisabled ? '' : '请输入'" :placeholder="item.disabled && showDisabled ? '' : '请输入'"
clearable clearable
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@@ -16,7 +16,7 @@
<el-input <el-input
v-if="item.inputMode === 'textarea'" v-if="item.inputMode === 'textarea'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
type="textarea" type="textarea"
autosize autosize
:placeholder="item.disabled && showDisabled ? '' : '请输入'" :placeholder="item.disabled && showDisabled ? '' : '请输入'"
@@ -30,7 +30,7 @@
<el-input-number <el-input-number
v-if="item.inputMode === 'inputNumber'" v-if="item.inputMode === 'inputNumber'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:placeholder="item.disabled && showDisabled ? '' : '请输入'" :placeholder="item.disabled && showDisabled ? '' : '请输入'"
:min="0" :min="0"
:step="item.step" :step="item.step"
@@ -42,7 +42,7 @@
<el-select <el-select
v-if="item.inputMode === 'select'" v-if="item.inputMode === 'select'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:placeholder="item.disabled && showDisabled ? '' : '请选择'" :placeholder="item.disabled && showDisabled ? '' : '请选择'"
clearable clearable
:options="item.options" :options="item.options"
@@ -59,7 +59,7 @@
<el-radio-group <el-radio-group
v-if="item.inputMode === 'radio'" v-if="item.inputMode === 'radio'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
> >
@@ -73,7 +73,7 @@
<el-checkbox-group <el-checkbox-group
v-if="item.inputMode === 'checkbox'" v-if="item.inputMode === 'checkbox'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
> >
@@ -87,7 +87,7 @@
<MultipleSelect <MultipleSelect
v-if="item.inputMode === 'multipleSelect'" v-if="item.inputMode === 'multipleSelect'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:options="item.options" :options="item.options"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@@ -96,7 +96,7 @@
<el-date-picker <el-date-picker
v-if="item.inputMode === 'date'" v-if="item.inputMode === 'date'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
type="datetime" type="datetime"
format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss"
@@ -109,7 +109,7 @@
<el-date-picker <el-date-picker
v-if="item.inputMode === 'daterange'" v-if="item.inputMode === 'daterange'"
v-bind="attrs" v-bind="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
type="datetimerange" type="datetimerange"
start-placeholder="开始时间" start-placeholder="开始时间"
format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss"
@@ -123,7 +123,7 @@
<ChoseFile <ChoseFile
v-if="item.inputMode === 'choseFile'" v-if="item.inputMode === 'choseFile'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@remove="(val: any) => removeFun(item.key, val)" @remove="(val: any) => removeFun(item.key, val)"
@@ -131,14 +131,14 @@
<UploadImg <UploadImg
v-if="item.inputMode === 'uploadImg'" v-if="item.inputMode === 'uploadImg'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
/> />
<UserSelect <UserSelect
v-if="item.inputMode === 'userSelect'" v-if="item.inputMode === 'userSelect'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@clear="clearFun" @clear="clearFun"
@@ -147,7 +147,7 @@
v-if="['projectSelect', 'projectIdSelect'].includes(item.inputMode)" v-if="['projectSelect', 'projectIdSelect'].includes(item.inputMode)"
:showCodeList="item.inputMode === 'projectSelect' ? false : true" :showCodeList="item.inputMode === 'projectSelect' ? false : true"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@clear="clearFun" @clear="clearFun"
@@ -155,7 +155,7 @@
<UserSelect <UserSelect
v-if="item.inputMode === 'userSelectMultiple'" v-if="item.inputMode === 'userSelectMultiple'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
multiple multiple
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@@ -165,7 +165,7 @@
v-if="['projectSelectMultiple', 'projectIdSelectMultiple'].includes(item.inputMode)" v-if="['projectSelectMultiple', 'projectIdSelectMultiple'].includes(item.inputMode)"
:showCodeList="item.inputMode === 'projectSelectMultiple' ? false : true" :showCodeList="item.inputMode === 'projectSelectMultiple' ? false : true"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
multiple multiple
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@@ -174,7 +174,7 @@
<ApproveList <ApproveList
v-if="item.inputMode === 'approveList'" v-if="item.inputMode === 'approveList'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@clear="clearFun" @clear="clearFun"
@@ -182,7 +182,7 @@
<FileName <FileName
v-if="item.inputMode === 'fileName'" v-if="item.inputMode === 'fileName'"
:attrs="attrs" :attrs="attrs"
v-model="formData[item.key]" v-model="formData[item.searchKey || item.key]"
:disabled="attrs.disabled || (item.disabled && showDisabled)" :disabled="attrs.disabled || (item.disabled && showDisabled)"
@change="(val: any) => changeFun(item.key, val)" @change="(val: any) => changeFun(item.key, val)"
@clear="clearFun" @clear="clearFun"

View File

@@ -43,8 +43,13 @@
</div> </div>
</template> </template>
<template v-if="item.inputMode !== 'slot'" #reference> <template v-if="item.inputMode !== 'slot'" #reference>
<el-icon class="head-icon" :class="{ active: data[item.key] }" :size="16" @click="openFun"> <el-icon
<Finished v-if="data[item.key]" /> class="head-icon"
:class="{ active: data[item.searchKey || item.key] }"
:size="16"
@click="openFun"
>
<Finished v-if="data[item.searchKey || item.key]" />
<Filter v-else /> <Filter v-else />
</el-icon> </el-icon>
</template> </template>
@@ -92,12 +97,12 @@ const searchFun = () => {
popoverVisible.value = false; popoverVisible.value = false;
emit('search', { emit('search', {
filterType: seq.value, filterType: seq.value,
filterKey: props.item.key, filterKey: props.item.searchKey || props.item.key,
}); });
}; };
const resetFun = () => { const resetFun = () => {
searchForm.value[props.item.key] = ''; searchForm.value[props.item.searchKey || props.item.key] = '';
searchFun(); searchFun();
}; };
</script> </script>

View File

@@ -205,6 +205,22 @@
<el-switch v-model="row.tableSearch" :disabled="disabled" /> <el-switch v-model="row.tableSearch" :disabled="disabled" />
</template> </template>
</vxe-column> </vxe-column>
<vxe-column
field="searchKey"
title="搜索key"
align="center"
header-align="center"
:min-width="120"
>
<template #default="{ row }">
<el-input
v-model="row.searchKey"
placeholder="请输入"
clearable
:disabled="disabled"
/>
</template>
</vxe-column>
<vxe-column <vxe-column
field="disabled" field="disabled"
title="不可编辑" title="不可编辑"