Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
performance-score
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ai-tools
performance-score
Commits
274888cd
Commit
274888cd
authored
Aug 12, 2025
by
Performance System
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
7a5f3bf6
Pipeline
#3161
passed with stage
in 28 seconds
Changes
3
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
295 additions
and
31 deletions
+295
-31
export-default-behavior-change.html
+0
-0
layout-adjustment-verification.html
+249
-0
src/views/admin/AdminPanel.vue
+46
-31
No files found.
export-default-behavior-change.html
0 → 100644
View file @
274888cd
This diff is collapsed.
Click to expand it.
layout-adjustment-verification.html
0 → 100644
View file @
274888cd
<!DOCTYPE html>
<html
lang=
"zh-CN"
>
<head>
<meta
charset=
"UTF-8"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0"
>
<title>
用户视图布局调整验证
</title>
<style>
body
{
font-family
:
Arial
,
sans-serif
;
max-width
:
1000px
;
margin
:
0
auto
;
padding
:
20px
;
line-height
:
1.6
;
}
.header
{
background
:
#409EFF
;
color
:
white
;
padding
:
20px
;
border-radius
:
8px
;
margin-bottom
:
20px
;
text-align
:
center
;
}
.section
{
background
:
#f5f5f5
;
padding
:
20px
;
margin
:
15px
0
;
border-radius
:
8px
;
border-left
:
4px
solid
#409EFF
;
}
.before-after
{
display
:
grid
;
grid-template-columns
:
1
fr
1
fr
;
gap
:
20px
;
margin
:
20px
0
;
}
.before
{
background
:
#fef0f0
;
border
:
2px
solid
#F56C6C
;
padding
:
15px
;
border-radius
:
8px
;
}
.after
{
background
:
#f0f9ff
;
border
:
2px
solid
#67C23A
;
padding
:
15px
;
border-radius
:
8px
;
}
.mockup
{
background
:
#fff
;
border
:
1px
solid
#ddd
;
border-radius
:
4px
;
padding
:
15px
;
margin
:
10px
0
;
font-family
:
monospace
;
font-size
:
12px
;
}
.filter-row
{
display
:
flex
;
align-items
:
center
;
gap
:
10px
;
padding
:
10px
;
background
:
#f8f9fa
;
border-radius
:
4px
;
margin
:
5px
0
;
}
.input-box
{
background
:
#fff
;
border
:
1px
solid
#dcdfe6
;
padding
:
5px
10px
;
border-radius
:
4px
;
min-width
:
120px
;
}
.button
{
background
:
#67C23A
;
color
:
white
;
padding
:
6px
12px
;
border-radius
:
4px
;
border
:
none
;
cursor
:
pointer
;
}
.footer-area
{
background
:
#f0f0f0
;
padding
:
15px
;
border-radius
:
4px
;
margin
:
10px
0
;
text-align
:
right
;
}
.highlight
{
background
:
#fff3cd
;
padding
:
2px
6px
;
border-radius
:
3px
;
font-weight
:
bold
;
}
.checklist
{
list-style
:
none
;
padding
:
0
;
}
.checklist
li
{
padding
:
8px
0
;
position
:
relative
;
padding-left
:
30px
;
}
.checklist
li
:before
{
content
:
"✓"
;
position
:
absolute
;
left
:
0
;
color
:
#67C23A
;
font-weight
:
bold
;
font-size
:
16px
;
}
</style>
</head>
<body>
<div
class=
"header"
>
<h1>
📐 用户视图布局调整完成
</h1>
<p>
导出用户数据按钮位置优化
</p>
</div>
<div
class=
"section"
>
<h2>
🎯 调整目标
</h2>
<p><strong>
需求:
</strong>
将"导出用户数据"按钮从对话框底部移动到筛选区域,与"筛选机构名称"输入框并列显示。
</p>
<h3>
📍 位置变更
</h3>
<ul>
<li><strong>
原位置:
</strong>
用户视图对话框底部(footer区域)
</li>
<li><strong>
新位置:
</strong>
筛选机构名称输入框右侧
</li>
<li><strong>
布局:
</strong>
水平并列排列
</li>
</ul>
</div>
<div
class=
"section"
>
<h2>
🔄 布局对比
</h2>
<div
class=
"before-after"
>
<div
class=
"before"
>
<h3>
❌ 调整前布局
</h3>
<div
class=
"mockup"
>
<div
style=
"font-weight: bold; margin-bottom: 10px;"
>
机构图片情况
</div>
<div
class=
"filter-row"
>
<div
class=
"input-box"
>
筛选机构ID
</div>
<div
class=
"input-box"
>
筛选机构名称
</div>
</div>
<div
style=
"margin: 20px 0; color: #666;"
>
[机构卡片展示区域]
</div>
<div
class=
"footer-area"
>
<span
class=
"button"
>
导出用户数据 ▼
</span>
<span
style=
"margin-left: 20px;"
>
取消
</span>
<span
style=
"margin-left: 10px;"
class=
"button"
>
切换视图
</span>
</div>
</div>
</div>
<div
class=
"after"
>
<h3>
✅ 调整后布局
</h3>
<div
class=
"mockup"
>
<div
style=
"font-weight: bold; margin-bottom: 10px;"
>
机构图片情况
</div>
<div
class=
"filter-row"
>
<div
class=
"input-box"
>
筛选机构ID
</div>
<div
class=
"input-box"
>
筛选机构名称
</div>
<span
class=
"button"
>
导出数据 ▼
</span>
</div>
<div
style=
"margin: 20px 0; color: #666;"
>
[机构卡片展示区域]
</div>
<div
class=
"footer-area"
>
<span
style=
"margin-left: 20px;"
>
取消
</span>
<span
style=
"margin-left: 10px;"
class=
"button"
>
切换视图
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"section"
>
<h2>
🔧 技术实现
</h2>
<h3>
📝 主要修改
</h3>
<ol
class=
"checklist"
>
<li>
将导出按钮从
<code>
template #footer
</code>
移动到
<code>
.filter-controls
</code></li>
<li>
调整筛选机构名称输入框的右边距为
<code>
margin-right: 15px
</code></li>
<li>
简化按钮文字为"导出数据"以节省空间
</li>
<li>
保持原有的下拉菜单功能(CSV格式、ZIP图片包)
</li>
<li>
保持按钮的禁用逻辑(选择用户后才可用)
</li>
</ol>
<h3>
🎨 样式优化
</h3>
<ul>
<li><strong>
筛选控件布局:
</strong>
使用 flexbox 布局,支持响应式
</li>
<li><strong>
间距调整:
</strong>
合理的元素间距,视觉层次清晰
</li>
<li><strong>
头部样式:
</strong>
添加底部边框,增强区域分割感
</li>
<li><strong>
响应式支持:
</strong>
小屏幕下允许换行显示
</li>
</ul>
</div>
<div
class=
"section"
>
<h2>
✅ 功能验证
</h2>
<h3>
🧪 测试步骤
</h3>
<ol
class=
"checklist"
>
<li>
登录管理员账户 (admin/admin123)
</li>
<li>
进入管理员控制面板
</li>
<li>
点击"切换到用户视图"按钮
</li>
<li>
在用户选择下拉框中选择一个用户
</li>
<li>
确认导出按钮出现在筛选区域右侧
</li>
<li>
验证导出按钮的下拉菜单功能正常
</li>
<li>
测试CSV和ZIP格式导出功能
</li>
</ol>
<h3>
🎯 预期效果
</h3>
<ul>
<li><strong>
位置正确:
</strong>
导出按钮位于筛选机构名称输入框右侧
</li>
<li><strong>
布局美观:
</strong>
元素对齐,间距合理
</li>
<li><strong>
功能完整:
</strong>
下拉菜单包含CSV和ZIP选项
</li>
<li><strong>
交互正常:
</strong>
选择用户后按钮可用,未选择时禁用
</li>
<li><strong>
响应式:
</strong>
在不同屏幕尺寸下布局正常
</li>
</ul>
</div>
<div
class=
"section"
>
<h2>
🎨 界面优势
</h2>
<h3>
📈 用户体验提升
</h3>
<ul>
<li><strong>
操作便捷:
</strong>
导出功能更容易发现和使用
</li>
<li><strong>
逻辑清晰:
</strong>
筛选和导出功能在同一区域
</li>
<li><strong>
空间利用:
</strong>
减少底部区域的拥挤感
</li>
<li><strong>
视觉统一:
</strong>
功能按钮与筛选控件形成统一的操作区
</li>
</ul>
<h3>
🔄 工作流程优化
</h3>
<ol>
<li>
选择用户 → 导出按钮变为可用
</li>
<li>
使用筛选功能 → 快速定位目标机构
</li>
<li>
点击导出按钮 → 就近操作,无需滚动到底部
</li>
<li>
选择导出格式 → 完成数据导出
</li>
</ol>
</div>
<div
class=
"section"
>
<h2>
🎉 调整完成
</h2>
<p><strong>
用户视图布局调整已完成!
</strong></p>
<p>
现在"导出用户数据"按钮已经移动到更合理的位置,与筛选控件并列显示,提供了更好的用户体验和操作便利性。
</p>
<p
class=
"highlight"
>
请测试新的布局,确认所有功能正常工作!
</p>
</div>
</body>
</html>
src/views/admin/AdminPanel.vue
View file @
274888cd
...
@@ -367,21 +367,21 @@
...
@@ -367,21 +367,21 @@
:disabled=
"!selectedMonthData"
:disabled=
"!selectedMonthData"
split-button
split-button
type=
"success"
type=
"success"
@
click=
"exportHistoryData('
csv
')"
@
click=
"exportHistoryData('
zip
')"
:loading=
"exportHistoryLoading"
:loading=
"exportHistoryLoading"
>
>
<el-icon><Download
/></el-icon>
<el-icon><Download
/></el-icon>
导出历史数据
导出历史数据
<
template
#
dropdown
>
<
template
#
dropdown
>
<el-dropdown-menu>
<el-dropdown-menu>
<el-dropdown-item
command=
"csv"
>
<el-icon><List
/></el-icon>
CSV格式
</el-dropdown-item>
<el-dropdown-item
command=
"zip"
>
<el-dropdown-item
command=
"zip"
>
<el-icon><FolderOpened
/></el-icon>
<el-icon><FolderOpened
/></el-icon>
ZIP图片包
ZIP图片包
</el-dropdown-item>
</el-dropdown-item>
<el-dropdown-item
command=
"csv"
>
<el-icon><List
/></el-icon>
CSV格式
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown-menu>
</
template
>
</
template
>
</el-dropdown>
</el-dropdown>
...
@@ -827,13 +827,39 @@
...
@@ -827,13 +827,39 @@
<el-input
<el-input
v-model=
"institutionFilter"
v-model=
"institutionFilter"
placeholder=
"筛选机构名称"
placeholder=
"筛选机构名称"
style=
"width: 150px;"
style=
"width: 150px;
margin-right: 15px;
"
clearable
clearable
>
>
<
template
#
prefix
>
<
template
#
prefix
>
<el-icon><Search
/></el-icon>
<el-icon><Search
/></el-icon>
</
template
>
</
template
>
</el-input>
</el-input>
<!-- 导出用户数据按钮 - 移动到筛选区域 -->
<el-dropdown
@
command=
"handleUserExportCommand"
:disabled=
"!selectedViewUserId"
split-button
type=
"success"
size=
"default"
@
click=
"exportUserData('zip')"
:loading=
"exportUserLoading"
>
<el-icon><Download
/></el-icon>
导出数据
<
template
#
dropdown
>
<el-dropdown-menu>
<el-dropdown-item
command=
"zip"
>
<el-icon><FolderOpened
/></el-icon>
ZIP图片包
</el-dropdown-item>
<el-dropdown-item
command=
"csv"
>
<el-icon><List
/></el-icon>
CSV格式
</el-dropdown-item>
</el-dropdown-menu>
</
template
>
</el-dropdown>
</div>
</div>
</div>
</div>
...
@@ -878,31 +904,6 @@
...
@@ -878,31 +904,6 @@
</div>
</div>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<div
class=
"dialog-footer"
>
<div
class=
"footer-left"
>
<el-dropdown
@
command=
"handleUserExportCommand"
:disabled=
"!selectedViewUserId"
split-button
type=
"success"
@
click=
"exportUserData('csv')"
:loading=
"exportUserLoading"
>
<el-icon><Download
/></el-icon>
导出用户数据
<template
#
dropdown
>
<el-dropdown-menu>
<el-dropdown-item
command=
"csv"
>
<el-icon><List
/></el-icon>
CSV格式
</el-dropdown-item>
<el-dropdown-item
command=
"zip"
>
<el-icon><FolderOpened
/></el-icon>
ZIP图片包
</el-dropdown-item>
</el-dropdown-menu>
</
template
>
</el-dropdown>
</div>
<div
class=
"footer-right"
>
<div
class=
"footer-right"
>
<el-button
@
click=
"userViewDialogVisible = false"
>
取消
</el-button>
<el-button
@
click=
"userViewDialogVisible = false"
>
取消
</el-button>
<el-button
<el-button
...
@@ -3538,11 +3539,15 @@ const iconComponents = {
...
@@ -3538,11 +3539,15 @@ const iconComponents = {
justify-content
:
space-between
;
justify-content
:
space-between
;
align-items
:
center
;
align-items
:
center
;
margin-bottom
:
20px
;
margin-bottom
:
20px
;
padding
:
15px
0
;
border-bottom
:
1px
solid
#EBEEF5
;
}
}
.institutions-header
h4
{
.institutions-header
h4
{
margin
:
0
;
margin
:
0
;
color
:
#303133
;
color
:
#303133
;
font-size
:
16px
;
font-weight
:
600
;
}
}
/* 机构预览卡片悬停效果 */
/* 机构预览卡片悬停效果 */
...
@@ -3961,6 +3966,16 @@ const iconComponents = {
...
@@ -3961,6 +3966,16 @@ const iconComponents = {
.filter-controls
{
.filter-controls
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
gap
:
0
;
/* 移除默认间距,使用margin控制 */
flex-wrap
:
wrap
;
/* 允许换行以适应小屏幕 */
}
.filter-controls
.el-input
{
flex-shrink
:
0
;
/* 防止输入框被压缩 */
}
.filter-controls
.el-dropdown
{
flex-shrink
:
0
;
/* 防止下拉按钮被压缩 */
}
}
.performance-table
.el-table__header
th
,
.performance-table
.el-table__header
th
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment