fix(web): 让充值管理列表按当前页数据展开以避免高度不足。
This commit is contained in:
1 parent
13630045df
commit
cb0344498a
4 files changed
+11
-59
No files matched your search
@@ -41,12 +41,11 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="list-body list-wrap">
|
||||
<div ref="tableWrapRef" class="list-table-viewport-anchor">
|
||||
<div class="list-table-viewport-anchor">
|
||||
<ListTable
|
||||
ref="tableRef"
|
||||
table-key="pl-vehicle-fuel-card"
|
||||
class="list-table"
|
||||
:height="tableHeight"
|
||||
:data="tableData"
|
||||
v-loading="loading || detailLoading"
|
||||
stripe
|
||||
@@ -85,7 +84,7 @@
|
||||
/>
|
||||
</ListTable>
|
||||
</div>
|
||||
<div ref="pagerRef" class="pagination list-pager-bar">
|
||||
<div class="pagination list-pager-bar">
|
||||
<el-pagination
|
||||
:current-page="pagination.page"
|
||||
:page-size="pagination.pageSize"
|
||||
@@ -191,7 +190,6 @@
|
||||
import ListQuickSearchInput from '@/components/business/list-quick-search-input/index.vue'
|
||||
import SystemViewDialog from '@/components/business/system-view-dialog/index.vue'
|
||||
import type { ViewSection } from '@/components/business/system-view-dialog/types'
|
||||
import { useListTableViewportHeight } from '@/composables/useListTableViewportHeight'
|
||||
import {
|
||||
vehicleFuelCardApi,
|
||||
type VehicleFuelCard,
|
||||
@@ -210,14 +208,7 @@
|
||||
const submitLoading = ref(false)
|
||||
const deleteLoading = ref(false)
|
||||
const busy = computed(() => detailLoading.value || submitLoading.value || deleteLoading.value)
|
||||
const tableWrapRef = ref<HTMLElement | null>(null)
|
||||
const pagerRef = ref<HTMLElement | null>(null)
|
||||
const tableRef = ref<any>(null)
|
||||
const { tableHeight, recalc } = useListTableViewportHeight({
|
||||
tableEl: tableWrapRef,
|
||||
pagerEl: pagerRef,
|
||||
tableRef
|
||||
})
|
||||
let listRequestId = 0
|
||||
let disposed = false
|
||||
|
||||
@@ -284,7 +275,6 @@
|
||||
} finally {
|
||||
if (requestId === listRequestId && !disposed) {
|
||||
loading.value = false
|
||||
nextTick(recalc)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,10 +42,9 @@
|
||||
</div>
|
||||
|
||||
<div class="list-body list-wrap">
|
||||
<div ref="rechargeApplyTableWrapRef" class="table-scroll bx-list-table-wrap">
|
||||
<div class="table-scroll bx-list-table-wrap">
|
||||
<ListTable
|
||||
ref="rechargeApplyTableRef"
|
||||
:height="tableHeight" table-key="pl-vehicle-recharge-apply"
|
||||
table-key="pl-vehicle-recharge-apply"
|
||||
class="list-table"
|
||||
:data="tableData"
|
||||
v-loading="loading"
|
||||
@@ -304,7 +303,7 @@
|
||||
|
||||
|
||||
</div>
|
||||
<div ref="rechargeApplyBelowRef">
|
||||
<div>
|
||||
<div class="pagination list-pager-bar">
|
||||
<div class="list-pager-selected">
|
||||
已选 <span class="sel-num">{{ selectedRows.length }}</span> 项
|
||||
@@ -505,7 +504,6 @@ import { usePersistedListColumns } from '@/composables/usePersistedListColumns'
|
||||
import { useServerColumnFilters } from '@/composables/useServerColumnFilters'
|
||||
import { useColumnSort } from '@/composables/useColumnSort'
|
||||
import { plVehicleRechargeApplyColumnFilterDefs } from '@/views/pl/vehicle-recharge-apply/columnFilterDefs'
|
||||
import { useListTableViewportHeight } from '@/composables/useListTableViewportHeight'
|
||||
import { useVehicleFuelCard } from '@/composables/useVehicleFuelCard'
|
||||
import {
|
||||
Check,
|
||||
@@ -687,15 +685,6 @@ function handleResetColumns() {
|
||||
resetToInitial()
|
||||
}
|
||||
|
||||
const rechargeApplyTableWrapRef = ref<HTMLElement | null>(null)
|
||||
const rechargeApplyBelowRef = ref<HTMLElement | null>(null)
|
||||
const rechargeApplyTableRef = ref<any>(null)
|
||||
const { tableHeight, recalc: recalcTableHeight } = useListTableViewportHeight({
|
||||
tableEl: rechargeApplyTableWrapRef,
|
||||
pagerEl: rechargeApplyBelowRef,
|
||||
tableRef: rechargeApplyTableRef
|
||||
})
|
||||
|
||||
const currentUserId = computed(() => {
|
||||
const info = userStore.info as Record<string, unknown> | undefined
|
||||
return String(info?.id || info?.userId || '')
|
||||
@@ -1273,7 +1262,5 @@ onMounted(async () => {
|
||||
applySummaryFilter()
|
||||
await Promise.all([loadVehicleOptions(), loadUserOptions()])
|
||||
fetchData()
|
||||
|
||||
nextTick(() => recalcTableHeight())
|
||||
})
|
||||
</script>
|
||||
@@ -52,10 +52,9 @@
|
||||
</div>
|
||||
|
||||
<div class="list-body list-wrap">
|
||||
<div ref="rechargeRecordTableWrapRef" class="table-scroll bx-list-table-wrap">
|
||||
<div class="table-scroll bx-list-table-wrap">
|
||||
<ListTable
|
||||
ref="rechargeRecordTableRef"
|
||||
:height="tableHeight" table-key="pl-vehicle-recharge-record"
|
||||
table-key="pl-vehicle-recharge-record"
|
||||
class="list-table"
|
||||
:data="tableData"
|
||||
v-loading="loading"
|
||||
@@ -392,7 +391,7 @@
|
||||
|
||||
|
||||
</div>
|
||||
<div ref="rechargeRecordBelowRef">
|
||||
<div>
|
||||
<div class="pagination list-pager-bar">
|
||||
<div class="list-pager-selected">
|
||||
已选 <span class="sel-num">{{ selectedRows.length }}</span> 项
|
||||
@@ -590,7 +589,6 @@ import { usePersistedListColumns } from '@/composables/usePersistedListColumns'
|
||||
import { useServerColumnFilters } from '@/composables/useServerColumnFilters'
|
||||
import { useColumnSort } from '@/composables/useColumnSort'
|
||||
import { plVehicleRechargeDisburseColumnFilterDefs } from '@/views/pl/vehicle-recharge-apply/columnFilterDefs'
|
||||
import { useListTableViewportHeight } from '@/composables/useListTableViewportHeight'
|
||||
import { useVehicleFuelCard } from '@/composables/useVehicleFuelCard'
|
||||
import { Check, Close, Delete, Edit, Filter, Money, Plus } from '@element-plus/icons-vue'
|
||||
import {
|
||||
@@ -719,15 +717,6 @@ function handleResetColumns() {
|
||||
resetToInitial()
|
||||
}
|
||||
|
||||
const rechargeRecordTableWrapRef = ref<HTMLElement | null>(null)
|
||||
const rechargeRecordBelowRef = ref<HTMLElement | null>(null)
|
||||
const rechargeRecordTableRef = ref<any>(null)
|
||||
const { tableHeight, recalc: recalcTableHeight } = useListTableViewportHeight({
|
||||
tableEl: rechargeRecordTableWrapRef,
|
||||
pagerEl: rechargeRecordBelowRef,
|
||||
tableRef: rechargeRecordTableRef
|
||||
})
|
||||
|
||||
const submitLoading = ref(false)
|
||||
const deleteLoadingMap = reactive<Record<string, boolean>>({})
|
||||
const tableData = ref<VehicleRechargeDisburseBoardItem[]>([])
|
||||
@@ -1172,8 +1161,6 @@ async function handleDelete(row: VehicleRechargeDisburseBoardItem) {
|
||||
|
||||
onMounted(() => {
|
||||
fetchData()
|
||||
|
||||
nextTick(() => recalcTableHeight())
|
||||
})
|
||||
</script>
|
||||
|
||||
|
||||
@@ -64,12 +64,10 @@
|
||||
</div>
|
||||
|
||||
<div class="list-body list-wrap">
|
||||
<div ref="wfReimburseTableWrapRef" class="list-table-viewport-anchor">
|
||||
<div class="list-table-viewport-anchor">
|
||||
<ListTable
|
||||
ref="wfReimburseTableRef"
|
||||
table-key="pl-vehicle-recharge-workflow"
|
||||
class="list-table"
|
||||
:height="tableHeight"
|
||||
:data="filteredNodes"
|
||||
v-loading="loading"
|
||||
stripe
|
||||
@@ -206,7 +204,7 @@
|
||||
</ListTable>
|
||||
</div>
|
||||
|
||||
<div ref="wfReimbursePagerRef" class="pagination list-pager-bar">
|
||||
<div class="pagination list-pager-bar">
|
||||
<div class="list-pager-selected">
|
||||
已选 <span class="sel-num">{{ selectedRows.length }}</span> 项
|
||||
</div>
|
||||
@@ -327,13 +325,12 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { reactive, ref, computed, onMounted, nextTick } from 'vue'
|
||||
import { reactive, ref, computed, onMounted } from 'vue'
|
||||
import ColumnHeaderFilter from '@/components/business/column-header-filter/index.vue'
|
||||
import ListToolbarEndActions from '@/components/business/list-toolbar-end-actions/index.vue'
|
||||
import ListQuickSearchInput from '@/components/business/list-quick-search-input/index.vue'
|
||||
import { useClientColumnFilters } from '@/composables/useClientColumnFilters'
|
||||
import { usePersistedListColumns } from '@/composables/usePersistedListColumns'
|
||||
import { useListTableViewportHeight } from '@/composables/useListTableViewportHeight'
|
||||
import { canDeleteByCreator, filterDeletableByCreator, allRowsDeletableByCreator, CREATOR_DELETE_TIP } from '@/utils/creator-delete'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import type { FormInstance } from 'element-plus'
|
||||
@@ -377,14 +374,6 @@ const {
|
||||
resetToDefault
|
||||
} = usePersistedListColumns('pl-vehicle-recharge-workflow-list-columns', listColumnDefs)
|
||||
|
||||
const wfReimburseTableWrapRef = ref<HTMLElement | null>(null)
|
||||
const wfReimbursePagerRef = ref<HTMLElement | null>(null)
|
||||
const wfReimburseTableRef = ref<any>(null)
|
||||
const { tableHeight, recalc: recalcTableHeight } = useListTableViewportHeight({
|
||||
tableEl: wfReimburseTableWrapRef,
|
||||
pagerEl: wfReimbursePagerRef,
|
||||
tableRef: wfReimburseTableRef
|
||||
})
|
||||
const loading = ref(false)
|
||||
const selectedRows = ref<Record<string, any>[]>([])
|
||||
const wfDef = ref<Record<string, any>>({})
|
||||
@@ -465,7 +454,6 @@ async function loadWfDef() {
|
||||
onMounted(() => {
|
||||
loadWfDef()
|
||||
loadUsers()
|
||||
nextTick(() => recalcTableHeight())
|
||||
})
|
||||
|
||||
function onSelectionChange(rows: Record<string, any>[]) {
|
||||
|
||||
Reference in new issue
Block a user