2
0

fix:账号管理界面搜索栏重置功能修复

This commit is contained in:
zhongzm
2025-02-14 17:03:46 +08:00
parent 35eed2393e
commit f13dcac7db
2 changed files with 27 additions and 7 deletions

View File

@@ -18,7 +18,7 @@ const scrollConfig = computed(() => {
};
});
const { columns, columnChecks, data, loading, getData, mobilePagination, searchParams, resetSearchParams } = useTable({
const { columns, columnChecks, data, loading, getData, mobilePagination, searchParams } = useTable({
apiFn: doGetsysUserList,
apiParams: {
pageNum: 1,
@@ -155,6 +155,18 @@ async function getUserDeptTree() {
deptTreeData.value = tree;
}
}
const handleReset = () => {
const currentPageSize = searchParams.pageSize;
searchParams.userName = '';
searchParams.phonenumber = '';
searchParams.status = undefined;
searchParams.deptId = undefined;
searchParams.pageNum = 1;
searchParams.pageSize = currentPageSize;
getData();
};
</script>
<template>
@@ -163,7 +175,7 @@ async function getUserDeptTree() {
<UserSearch
v-model:model="searchParams"
:dept-tree-data="deptTreeData"
@reset="resetSearchParams"
@reset="handleReset"
@search="getData"
/>
<ACard

View File

@@ -1,6 +1,7 @@
<script setup lang="ts">
import { $t } from '@/locales';
import { enableStatusOptions } from '@/constants/business';
import { computed } from 'vue';
defineOptions({
name: 'UserSearch'
@@ -19,7 +20,14 @@ const emit = defineEmits<Emits>();
const model = defineModel<Api.SystemManage.UserSearchParams>('model', { required: true });
// 使用计算属性来处理双向绑定
const formModel = computed({
get: () => model.value,
set: (val) => model.value = val
});
function reset() {
// 只触发重置事件
emit('reset');
}
@@ -30,21 +38,21 @@ function search() {
<template>
<ACard :title="$t('common.search')" :bordered="false" class="card-wrapper">
<AForm :model="model" :label-width="80">
<AForm :model="formModel" :label-width="80">
<ARow :gutter="[16, 16]" wrap>
<ACol :span="24" :md="12" :lg="4">
<AFormItem :label="$t('page.manage.user.userName')" name="userName" class="m-0">
<AInput v-model:value="model.userName" :placeholder="$t('page.manage.user.form.userName')" />
<AInput v-model:value="formModel.userName" :placeholder="$t('page.manage.user.form.userName')" />
</AFormItem>
</ACol>
<ACol :span="24" :md="12" :lg="4">
<AFormItem :label="$t('page.manage.user.phonenumber')" name="phonenumber" class="m-0">
<AInput v-model:value="model.phonenumber" :placeholder="$t('page.manage.user.form.phonenumber')" />
<AInput v-model:value="formModel.phonenumber" :placeholder="$t('page.manage.user.form.phonenumber')" />
</AFormItem>
</ACol>
<ACol :span="24" :md="12" :lg="4">
<AFormItem :label="$t('page.manage.user.status')" name="status" class="m-0">
<ASelect v-model:value="model.status" :placeholder="$t('page.manage.user.form.status')" allow-clear>
<ASelect v-model:value="formModel.status" :placeholder="$t('page.manage.user.form.status')" allow-clear>
<ASelectOption v-for="option in enableStatusOptions" :key="option.value" :value="option.value">
{{ $t(option.label) }}
</ASelectOption>
@@ -55,7 +63,7 @@ function search() {
<!-- 部门 -->
<AFormItem :label="$t('page.manage.user.dept')" name="deptId" class="m-0">
<ATreeSelect
v-model:value="model.deptId"
v-model:value="formModel.deptId"
:field-names="{ value: 'id' }"
:placeholder="$t('page.manage.user.form.dept')"
:tree-data="deptTreeData"