fix(店铺数据记录): 两级分页不再叠放——店铺级分页上移 toolbar 汇总行右侧(>20店才显示),卡片级分页保留底部 footer

This commit is contained in:
2026-09-06 21:42:38 +08:00
parent fc4eff2f01
commit e793f3b72d
@@ -276,7 +276,20 @@ onMounted(load)
</el-button>
<el-button @click="openPermission">权限配置</el-button>
</div>
<span class="list-toolbar-summary">共 {{ totalShops }} 家店铺 · 本页 {{ resultFileCount() }} 个结果文件</span>
<div class="lt-side">
<span class="list-toolbar-summary">共 {{ totalShops }} 家店铺 · 本页 {{ resultFileCount() }} 个结果文件</span>
<el-pagination
v-if="totalShops > pageSize"
class="shop-page-pager"
small
background
layout="prev, pager, next"
:total="totalShops"
:page-size="pageSize"
:current-page="page"
@current-change="(p: number) => { page = p; cardPage = 1; selection = new Set(); load() }"
/>
</div>
</div>
<template v-if="allResultRows.length">
@@ -335,16 +348,6 @@ onMounted(load)
</div>
</article>
</div>
<div class="table-footer">
<el-pagination
background
layout="prev, pager, next, jumper"
:total="totalShops"
:page-size="pageSize"
:current-page="page"
@current-change="(p: number) => { page = p; cardPage = 1; selection = new Set(); load() }"
/>
</div>
<div v-if="allResultRows.length > cardPageSize" class="table-footer">
<el-pagination
background
@@ -390,6 +393,7 @@ onMounted(load)
.list-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; color: var(--el-text-color-secondary); font-size: 13px; margin-bottom: 14px; }
.lt-buttons { display: inline-flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.list-toolbar-summary { white-space: nowrap; }
.lt-side { display: inline-flex; align-items: center; gap: 12px; justify-content: flex-end; flex-wrap: wrap; }
.table-footer { display: flex; justify-content: flex-end; margin-top: 14px; }
.shop-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.shop-card { border: 1px solid var(--el-border-color); border-radius: 12px; background: #fff; box-shadow: 0 1px 2px rgba(39, 67, 94, 0.04), 0 14px 30px -24px rgba(39, 67, 94, 0.28); overflow: hidden; }