diff --git a/web-admin/src/styles/bx/index.scss b/web-admin/src/styles/bx/index.scss index f11280f9b..46cc79488 100644 --- a/web-admin/src/styles/bx/index.scss +++ b/web-admin/src/styles/bx/index.scss @@ -69,8 +69,8 @@ } .table-scroll { - overflow-x: auto; - overflow-y: hidden; + min-width: 0; + overflow: visible; } .table-scroll .bx-table { diff --git a/web-admin/src/views/bx/reimburse/apply/index.vue b/web-admin/src/views/bx/reimburse/apply/index.vue index 3d77b0ee5..405c809e3 100644 --- a/web-admin/src/views/bx/reimburse/apply/index.vue +++ b/web-admin/src/views/bx/reimburse/apply/index.vue @@ -120,8 +120,11 @@
- +
+
-
- @@ -803,12 +808,13 @@ import ListColumnStatsRow from '@/components/business/list-column-stats-row/inde import ColumnHeaderFilter from '@/components/business/column-header-filter/index.vue' import { useDbInstantSearch } from '@/composables/useDbInstantSearch' import { usePersistedListColumns } from '@/composables/usePersistedListColumns' +import { useListTableViewportHeight } from '@/composables/useListTableViewportHeight' import { useClientColumnFilters, type ColumnFilterDef } from '@/composables/useClientColumnFilters' import ListQuickSearchInput from '@/components/business/list-quick-search-input/index.vue' -import { reactive, ref, computed, onMounted } from 'vue' +import { reactive, ref, computed, onMounted, nextTick } from 'vue' import { ElMessage, ElMessageBox } from 'element-plus' import { Plus, @@ -971,8 +977,16 @@ const { } = usePersistedListColumns('bx-reimburse-apply-list-columns', listColumnDefs) const reimburseApplyTableWrapRef = ref(null) +const reimburseApplyBelowRef = ref(null) +const reimburseApplyTableRef = ref(null) const reimburseApplyStatsRowRef = ref<{ resync?: () => void } | null>(null) +const { tableHeight, recalc: recalcTableHeight } = useListTableViewportHeight({ + tableEl: reimburseApplyTableWrapRef, + pagerEl: reimburseApplyBelowRef, + tableRef: reimburseApplyTableRef +}) + const reimburseApplyStatsRowColumns = computed((): StatsRowColumn[] => { const cols: StatsRowColumn[] = [ { key: '__selection', interactive: false }, @@ -1536,6 +1550,7 @@ function buildSearchQuery() { function handleSearch() { quickSearchKeyword.value = '' search(buildSearchQuery()) + nextTick(() => recalcTableHeight()) } useDbInstantSearch( @@ -1552,6 +1567,7 @@ function handleReset() { quickSearchKeyword.value = '' Object.assign(filterForm, { keyword: '', status: '', expenseName: '', applyDateRange: null }) search() + nextTick(() => recalcTableHeight()) } function handleQuickSearch() {