Files
xyzw_web_helper/MD说明文件夹/UI优化-显示重试轮数v3.7.1.md
2025-10-17 20:56:50 +08:00

316 lines
9.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# UI优化 - 显示重试轮数 v3.7.1
## 📌 更新时间
2025-10-07
## 🎯 优化目标
### 用户反馈
> "如果存在有失败的token我希望它能够显示第几次重试次数"
### 核心需求
在批量任务执行过程中,用户需要清楚地看到:
- 当前是否在重试中
- 当前是第几轮重试
- 重试的进度(已重试/总重试次数)
## ✨ UI改进
### 改进1: 执行进度标题
#### 优化前
```
总体进度 45%
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```
#### 优化后
```
总体进度 🔄 第2轮重试 45%
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```
**实现效果**
- 首次执行时:只显示"总体进度"
- 重试中:显示橙色标签"🔄 第X轮重试"
- 动态更新每轮重试时X会自动增加
### 改进2: 统计信息面板
#### 优化前
```
总计 成功 失败 跳过 耗时
318 280 38 0 2分30秒
```
#### 优化后(启用自动重试时)
```
总计 成功 失败 跳过 重试轮数 耗时
318 280 38 0 2/3 2分30秒
↑橙色高亮
```
**实现效果**
- 仅在启用自动重试时显示
- 格式:`当前轮数/最大轮数`
- 橙色高亮,字体加粗
- 实时更新
### 改进3: 配置区域
#### 保持原有显示
```
最大重试轮数: [3 ▲▼] 轮 (0/3)
↑实时进度
```
## 📊 视觉效果示例
### 场景1: 首次执行
```
┌────────────────────────────────────────┐
│ 总体进度 15% │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
├────────────────────────────────────────┤
│ 总计 成功 失败 跳过 重试轮数 耗时 │
│ 318 45 0 0 0/3 30秒 │
└────────────────────────────────────────┘
```
### 场景2: 第1轮重试中
```
┌────────────────────────────────────────┐
│ 总体进度 🔄 第1轮重试 35% │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
├────────────────────────────────────────┤
│ 总计 成功 失败 跳过 重试轮数 耗时 │
│ 318 280 38 0 1/3 2分5秒 │
└────────────────────────────────────────┘
```
### 场景3: 第2轮重试中
```
┌────────────────────────────────────────┐
│ 总体进度 🔄 第2轮重试 70% │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
├────────────────────────────────────────┤
│ 总计 成功 失败 跳过 重试轮数 耗时 │
│ 318 310 8 0 2/3 2分35秒│
└────────────────────────────────────────┘
```
### 场景4: 所有成功
```
┌────────────────────────────────────────┐
│ 总体进度 100% │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
├────────────────────────────────────────┤
│ 总计 成功 失败 跳过 重试轮数 耗时 │
│ 318 318 0 0 3/3 3分10秒│
│ ↑完成所有重试 │
└────────────────────────────────────────┘
```
## 🔧 实现细节
### 代码位置
#### 1. 执行进度标题 (`BatchTaskPanel.vue` 第363-376行)
```vue
<div class="progress-header">
<n-space align="center" :size="8">
<span>总体进度</span>
<!-- 🆕 重试标签 -->
<n-tag
v-if="batchStore.currentRetryRound > 0"
type="warning"
size="small"
:bordered="false"
>
🔄 {{ batchStore.currentRetryRound }}轮重试
</n-tag>
</n-space>
<span>{{ batchStore.overallProgress }}%</span>
</div>
```
**显示条件**`currentRetryRound > 0`
**标签类型**`warning`(橙色)
**图标**:🔄
#### 2. 统计信息 (`BatchTaskPanel.vue` 第407-412行)
```vue
<!-- 🆕 重试轮数统计 -->
<n-statistic
v-if="batchStore.autoRetryConfig.enabled"
label="重试轮数"
:value="`${batchStore.currentRetryRound}/${batchStore.autoRetryConfig.maxRetries}`"
class="retry-round"
/>
```
**显示条件**`autoRetryConfig.enabled`
**数值格式**`"当前/最大"` (字符串)
**样式类**`retry-round`
#### 3. CSS样式 (`BatchTaskPanel.vue` 第1155-1158行)
```scss
&.retry-round .n-statistic-value__content {
color: #ff9800; // 橙色
font-weight: 600; // 加粗
}
```
## 💡 用户体验提升
### 提升1: 信息透明度
**优化前**
- ❌ 不知道是否在重试
- ❌ 不知道重试了几轮
- ❌ 需要查看控制台才能了解
**优化后**
- ✅ 清楚显示重试状态
- ✅ 实时显示重试轮数
- ✅ 一目了然的进度
### 提升2: 进度感知
用户可以清楚地知道:
```
看到"🔄 第1轮重试" → 知道在重试中
看到"1/3" → 知道还有2轮机会
看到"3/3" → 知道已达最大重试次数
```
### 提升3: 决策支持
```
重试轮数: 2/3
失败: 15
↓ 用户可以判断
"还有1轮重试机会等等看"
"已经2轮了还有15个失败可能有问题"
```
## 📊 数据更新时机
### 更新触发点
1. **任务开始**
- `currentRetryRound` 重置为 0
- 不显示重试标签
2. **首次执行完成,有失败**
- 等待5秒配置的间隔
- `currentRetryRound` 更新为 1
- 显示"🔄 第1轮重试"
3. **第1轮重试完成仍有失败**
- 等待5秒
- `currentRetryRound` 更新为 2
- 显示"🔄 第2轮重试"
4. **达到最大次数或全部成功**
- `currentRetryRound` 不再增加
- 任务完成后重置为 0
### 实时性
- **执行中**:标签和数值实时更新
- **无延迟**数值变化立即反映在UI
- **自动刷新**:无需手动刷新页面
## 🎯 测试方法
### 测试1: 验证标签显示
1. 执行批量任务
2. 观察执行进度标题
3. 首次执行时应该**不显示**重试标签
4. 如果有失败等待5秒
5. 应该显示"🔄 第1轮重试"
### 测试2: 验证数值准确性
1. 设置最大重试轮数为3
2. 执行任务
3. 观察"重试轮数"统计
4. 应该显示0/3 → 1/3 → 2/3 → 3/3
### 测试3: 验证禁用时不显示
1. 关闭自动重试开关
2. 执行任务
3. 统计信息中**不应该**显示"重试轮数"
4. 执行进度中**不应该**显示重试标签
### 测试4: 验证样式
1. 检查"重试轮数"数值是否为橙色
2. 检查数值是否加粗
3. 检查重试标签是否为橙色背景
## 📝 颜色系统
### 统计信息颜色
```
成功:#18a058 (绿色)
失败:#d03050 (红色)
跳过:#f0a020 (黄色)
重试:#ff9800 (橙色) ← 🆕
```
### 重试标签颜色
```
类型warning
背景:橙色半透明
文字:深橙色
图标:🔄
```
## 🔗 相关文件
- `src/components/BatchTaskPanel.vue`
- 第363-376行执行进度标题重试标签
- 第407-412行统计信息重试轮数
- 第1155-1158行重试轮数样式
## 📌 注意事项
### 1. 显示条件
- **重试标签**:仅当 `currentRetryRound > 0` 时显示
- **重试统计**:仅当 `autoRetryConfig.enabled` 时显示
### 2. 数值含义
- `0/3`:还未开始重试
- `1/3`第1轮重试进行中或已完成
- `3/3`:已达最大重试次数
### 3. 标签位置
- 紧跟在"总体进度"文字后
- 不影响进度百分比显示
- 响应式布局,移动端自动换行
## 📅 版本信息
- **版本号**: v3.7.1
- **更新日期**: 2025-10-07
- **更新类型**: UI优化
- **优先级**: 中
- **影响范围**: 批量任务执行界面
## 🎉 总结
通过这次UI优化
1. **可见性提升**:重试状态清晰可见
2. **信息丰富**:同时显示当前轮数和总轮数
3. **用户友好**:无需查看控制台即可了解进度
4. **视觉优化**:橙色高亮,易于识别
用户现在可以一眼看出:
- ✅ 是否在重试中
- ✅ 当前第几轮重试
- ✅ 还有多少重试机会
- ✅ 重试进度如何
让批量任务的执行过程更加透明和可控!🎯