# 问题修复-任务模板和滑块刻度 v3.9.1

## 📋 问题描述

用户反馈了两个UI问题：

1. **自定义任务模板中缺少"爬塔"和"发车"选项**
2. **爬塔次数和发车刷新次数的滑块下方数字刻度消失了**

## 🔍 问题分析

### 问题1：任务模板缺少选项

**原因**：
- `TemplateEditor.vue` 组件中的 `availableTasks` 数组只包含了5个任务
- 缺少最新添加的 `sendCar`（发车）和 `climbTower`（爬塔）任务

**旧代码**：
```javascript
const availableTasks = [
  { value: 'dailyFix', label: '一键补差（包含所有每日任务）' },
  { value: 'legionSignIn', label: '俱乐部签到' },
  { value: 'autoStudy', label: '一键答题' },
  { value: 'claimHangupReward', label: '领取奖励（挂机）' },
  { value: 'addClock', label: '加钟' }
]
```

### 问题2：滑块刻度消失

**原因**：
- 并发数量的 `n-slider` 组件有 `:marks` 属性定义刻度
- 爬塔次数和发车刷新次数的 `n-slider` 组件缺少 `:marks` 属性

**对比**：

| 滑块 | :marks 属性 | 问题 |
|------|------------|------|
| 并发数量 | ✅ 有 | 刻度正常显示 |
| 爬塔次数 | ❌ 无 | 刻度消失 |
| 发车刷新次数 | ❌ 无 | 刻度消失 |

## ✅ 解决方案

### 1. 修复任务模板选项

**修改文件**：`src/components/TemplateEditor.vue`

**更新代码**：
```javascript
// 可用任务列表
const availableTasks = [
  { value: 'dailyFix', label: '一键补差（包含所有每日任务）' },
  { value: 'legionSignIn', label: '俱乐部签到' },
  { value: 'autoStudy', label: '一键答题' },
  { value: 'claimHangupReward', label: '领取奖励（挂机）' },
  { value: 'addClock', label: '加钟' },
  { value: 'sendCar', label: '发车' },        // ← 新增
  { value: 'climbTower', label: '爬塔' }      // ← 新增
]
```

### 2. 修复滑块刻度

**修改文件**：`src/components/BatchTaskPanel.vue`

#### 爬塔次数滑块（0-100）
```vue
<n-slider
  v-model:value="batchStore.climbTowerCount"
  :min="0"
  :max="100"
  :step="1"
  :marks="{0: '0', 10: '10', 20: '20', 30: '30', 40: '40', 50: '50', 60: '60', 70: '70', 80: '80', 90: '90', 100: '100'}"
  :disabled="batchStore.isExecuting"
  :tooltip="true"
  @update:value="handleTowerCountChange"
/>
```

#### 发车刷新次数滑块（0-10）
```vue
<n-slider
  v-model:value="batchStore.carRefreshCount"
  :min="0"
  :max="10"
  :step="1"
  :marks="{0: '0', 2: '2', 4: '4', 6: '6', 8: '8', 10: '10'}"
  :disabled="batchStore.isExecuting"
  :tooltip="true"
  @update:value="handleCarRefreshCountChange"
/>
```

## 🎨 修复效果

### 修复前

#### 自定义任务模板
```
包含任务:
□ 一键补差（包含所有每日任务）
□ 俱乐部签到
□ 一键答题
□ 领取奖励（挂机）
□ 加钟
                      ← 缺少"发车"和"爬塔"
```

#### 滑块刻度
```
并发数量:  [50] ━━━━━○━━━━━━━━━━
           1   10  20  30  40  50  60  70  80  90  100  ← 有刻度

爬塔次数:  [10] ━━○━━━━━━━━━━━━━
                                                        ← 无刻度

发车刷新次数: [1] ○━━━━━━━━━━━━
                                                        ← 无刻度
```

### 修复后

#### 自定义任务模板
```
包含任务:
□ 一键补差（包含所有每日任务）
□ 俱乐部签到
□ 一键答题
□ 领取奖励（挂机）
□ 加钟
□ 发车          ← ✅ 已添加
□ 爬塔          ← ✅ 已添加
```

#### 滑块刻度
```
并发数量:  [50] ━━━━━○━━━━━━━━━━
           1   10  20  30  40  50  60  70  80  90  100  ← 有刻度

爬塔次数:  [10] ━━○━━━━━━━━━━━━━
           0   10  20  30  40  50  60  70  80  90  100  ← ✅ 已恢复

发车刷新次数: [1] ○━━━━━━━━━━━━
              0   2   4   6   8   10                    ← ✅ 已恢复
```

## 📝 相关文件

### 修改的文件
1. **`src/components/TemplateEditor.vue`**
   - 第126-134行：更新 `availableTasks` 数组
   - 添加 `sendCar` 和 `climbTower` 选项

2. **`src/components/BatchTaskPanel.vue`**
   - 第167-176行：为爬塔次数滑块添加 `:marks` 属性
   - 第199-208行：为发车刷新次数滑块添加 `:marks` 属性

### 新增文件
- `MD说明/问题修复-任务模板和滑块刻度v3.9.1.md`

## 🧪 测试验证

### 测试1：自定义任务模板
1. 打开"批量自动化任务"
2. 点击"自定义模板"按钮
3. **预期结果**：
   - 在"包含任务"列表中能看到7个选项
   - 包含"发车"和"爬塔"选项 ✓

### 测试2：滑块刻度显示
1. 查看批量任务面板
2. **预期结果**：
   - 并发数量滑块下方显示：1, 10, 20, ..., 100 ✓
   - 爬塔次数滑块下方显示：0, 10, 20, ..., 100 ✓
   - 发车刷新次数滑块下方显示：0, 2, 4, 6, 8, 10 ✓

### 测试3：创建包含所有任务的模板
1. 点击"自定义模板" → "新建模板"
2. 输入模板名称："全功能套餐"
3. 勾选所有7个任务
4. 点击"创建模板"
5. **预期结果**：
   - 模板创建成功 ✓
   - 包含任务显示7个标签 ✓

## 🔄 版本信息

- **版本号**: v3.9.1
- **修复日期**: 2025-01-08
- **修复内容**: 
  - 自定义任务模板添加"发车"和"爬塔"选项
  - 恢复爬塔次数和发车刷新次数滑块的数字刻度
- **依赖版本**: v3.9.0

## 💡 设计说明

### 刻度间隔设计

| 滑块 | 范围 | 刻度间隔 | 理由 |
|------|------|---------|------|
| 并发数量 | 1-100 | 每10个 | 范围大，间隔10便于快速定位 |
| 爬塔次数 | 0-100 | 每10个 | 范围大，间隔10便于快速定位 |
| 发车刷新次数 | 0-10 | 每2个 | 范围小，间隔2提供精细控制 |

### 为什么不是每1个刻度？

- **视觉清晰**：过密的刻度会导致数字重叠
- **易读性**：适当间隔更容易识别当前值
- **用户体验**：输入框可以精确输入任意值，滑块主要用于快速调整

## 🐛 已知问题

无

## 🚀 后续计划

- [ ] 考虑添加快捷预设值按钮（如"最小"、"推荐"、"最大"）
- [ ] 优化移动端滑块显示

---

**✅ 问题已修复！刷新页面（Ctrl + F5）即可看到更新！**

