# 采购计划确认功能 - 快速测试指南

## 🎯 测试目标

验证采购计划的提交审批、批准和驳回功能的二次确认机制。

---

## 📋 测试步骤

### 测试 1: 提交审批功能

**前置条件**: 系统中有草稿状态的采购计划

1. 进入：**资产管理** → **采购管理** → **采购计划** 标签页
2. 找到状态为 **"草稿"** 的计划（灰色徽章）
3. 观察计划卡片右上角是否显示蓝色的 **"提交审批"** 按钮（带发送图标 📤）

**操作步骤**:
```
点击 "提交审批" 按钮
    ↓
【观察】弹出确认对话框
    ↓
对话框标题: "确认提交审批"
计划名称: 蓝色背景高亮显示
提示信息: "提交后，计划将进入审批流程..."
    ↓
点击 "确认提交" 按钮（蓝色）
    ↓
【验证】状态变为 "待审批"（橙色徽章）
【验证】显示成功提示: "采购计划已提交审批！"
```

**测试取消功能**:
```
点击 "提交审批" 按钮
    ↓
点击 "取消" 按钮或对话框外部
    ↓
【验证】对话框关闭
【验证】计划状态仍为 "草稿"（无变化）
```

✅ **预期结果**:
- 对话框正常弹出，显示计划名称
- 确认后状态变为"待审批"
- 取消后状态不变

---

### 测试 2: 批准计划功能

**前置条件**: 系统中有待审批状态的采购计划

1. 找到状态为 **"待审批"** 的计划（橙色徽章）
2. 观察计划卡片右上角是否同时显示：
   - 绿色的 **"批准"** 按钮（带竖起大拇指图标 👍）
   - 边框的 **"驳回"** 按钮（带向下大拇指图标 👎）

**操作步骤**:
```
点击 "批准" 按钮
    ↓
【观察】弹出确认对话框
    ↓
对话框标题: "确认批准计划"
计划名称: 绿色背景高亮显示
提示信息: "批准后，该计划可以进入执行阶段..."
    ↓
点击 "确认批准" 按钮（绿色）
    ↓
【验证】状态变为 "已批准"（绿色徽章）
【验证】显示审批人: "李经理"
【验证】显示审批时间
【验证】显示成功提示: "采购计划已批准！"
```

**测试取消功能**:
```
点击 "批准" 按钮
    ↓
点击 "取消" 按钮
    ↓
【验证】对话框关闭
【验证】计划状态仍为 "待审批"（无变化）
```

✅ **预期结果**:
- 对话框正常弹出，绿色主题
- 确认后状态变为"已批准"，记录审批信息
- 取消后状态不变

---

### 测试 3: 驳回计划功能

**前置条件**: 系统中有待审批状态的采购计划

1. 找到状态为 **"待审批"** 的计划
2. 观察是否显示 **"驳回"** 按钮（边框样式）

**操作步骤**:
```
点击 "驳回" 按钮
    ↓
【观察】弹出确认对话框
    ↓
对话框标题: "确认驳回计划"
计划名称: 红色背景高亮显示
提示信息: "驳回后，计划将返回草稿状态..."
    ↓
点击 "确认驳回" 按钮（红色）
    ↓
【验证】状态变为 "已驳回"（红色徽章）
【验证】显示成功提示: "采购计划已驳回！"
【验证】现在可以点击 "编辑" 按钮修改计划
```

**测试取消功能**:
```
点击 "驳回" 按钮
    ↓
按 ESC 键或点击对话框外部
    ↓
【验证】对话框关闭
【验证】计划状态仍为 "待审批"（无变化）
```

✅ **预期结果**:
- 对话框正常弹出，红色警告主题
- 确认后状态变为"已驳回"
- 驳回后可以编辑计划
- 取消后状态不变

---

## 🔄 完整流程测试

### 从草稿到批准的完整流程

```
1. 草稿状态计划
   ↓ 点击 "提交审批" → 确认
   
2. 待审批状态
   ↓ 点击 "批准" → 确认
   
3. 已批准状态 ✅
```

### 驳回后重新提交流程

```
1. 待审批状态计划
   ↓ 点击 "驳回" → 确认
   
2. 已驳回状态
   ↓ 点击 "编辑" → 修改内容 → 保存
   
3. 仍为已驳回状态
   ↓ 点击 "提交审批" → 确认
   
4. 待审批状态
   ↓ 点击 "批准" → 确认
   
5. 已批准状态 ✅
```

---

## 🎨 界面检查清单

### 按钮显示规则

| 计划状态 | 提交审批 | 批准 | 驳回 | 查看 | 编辑 |
|---------|---------|------|------|------|------|
| 草稿 | ✅ 蓝色 | ❌ | ❌ | ✅ | ✅ |
| 待审批 | ❌ | ✅ 绿色 | ✅ 边框 | ✅ | ❌ |
| 已批准 | ❌ | ❌ | ❌ | ✅ | ❌ |
| 已驳回 | ❌ | ❌ | ❌ | ✅ | ✅ |

### 对话框颜色主题

| 操作类型 | 标题 | 计划名称背景 | 确认按钮颜色 |
|---------|------|------------|------------|
| 提交审批 | "确认提交审批" | 蓝色 (bg-blue-50) | 蓝色 |
| 批准 | "确认批准计划" | 绿色 (bg-green-50) | 绿色 |
| 驳回 | "确认驳回计划" | 红色 (bg-red-50) | 红色 |

---

## ✅ 验证清单

### 功能验证
- [ ] 草稿状态显示"提交审批"按钮
- [ ] 待审批状态显示"批准"和"驳回"按钮
- [ ] 所有操作都弹出确认对话框
- [ ] 对话框显示正确的计划名称
- [ ] 对话框颜色主题与操作类型匹配
- [ ] 点击确认后状态正确变更
- [ ] 点击取消后状态不变
- [ ] 操作成功后显示成功提示

### 交互验证
- [ ] 点击取消按钮可关闭对话框
- [ ] 点击对话框外部可关闭
- [ ] 按 ESC 键可关闭对话框
- [ ] 关闭对话框后不执行操作
- [ ] 确认按钮颜色符合设计规范

### 数据验证
- [ ] 批准后记录审批人
- [ ] 批准后记录审批时间
- [ ] 状态徽章颜色正确
- [ ] 成功提示信息正确

---

## 🐛 常见问题

### Q1: 点击按钮没有弹出对话框？
**解决**: 检查浏览器控制台是否有错误，刷新页面重试。

### Q2: 对话框显示但计划名称为空？
**解决**: 确保点击的是正确的计划按钮，状态管理可能有问题。

### Q3: 点击确认后状态没有变化？
**解决**: 检查是否有 JavaScript 错误，查看网络请求是否成功。

### Q4: 对话框无法关闭？
**解决**: 尝试点击取消按钮、按 ESC 键或刷新页面。

---

## 📊 测试用例表

| 用例编号 | 测试场景 | 操作步骤 | 预期结果 |
|---------|---------|---------|---------|
| TC-001 | 提交审批 | 草稿计划 → 点击提交 → 确认 | 状态变为待审批 |
| TC-002 | 批准计划 | 待审批计划 → 点击批准 → 确认 | 状态变为已批准 |
| TC-003 | 驳回计划 | 待审批计划 → 点击驳回 → 确认 | 状态变为已驳回 |
| TC-004 | 取消提交 | 草稿计划 → 点击提交 → 取消 | 状态仍为草稿 |
| TC-005 | 取消批准 | 待审批计划 → 点击批准 → 取消 | 状态仍为待审批 |
| TC-006 | 取消驳回 | 待审批计划 → 点击驳回 → 取消 | 状态仍为待审批 |
| TC-007 | ESC关闭 | 任意操作 → 按ESC键 | 对话框关闭，状态不变 |
| TC-008 | 外部关闭 | 任意操作 → 点击外部 | 对话框关闭，状态不变 |

---

## 🎯 重点测试项

### 1. 二次确认机制 ⭐⭐⭐
- 每个关键操作都必须通过确认对话框
- 取消操作不影响原有状态

### 2. 状态转换 ⭐⭐⭐
- 草稿 → 提交 → 待审批
- 待审批 → 批准 → 已批准
- 待审批 → 驳回 → 已驳回

### 3. 按钮显示 ⭐⭐
- 不同状态显示不同的操作按钮
- 按钮颜色和图标正确

### 4. 对话框设计 ⭐⭐
- 颜色主题与操作类型匹配
- 信息显示完整准确

---

## ⏱️ 预计测试时间

- **单个功能测试**: 2-3 分钟
- **完整流程测试**: 5-8 分钟
- **全部测试**: 15-20 分钟

---

## 📝 测试记录模板

```
测试日期: ___________
测试人员: ___________

[ ] 提交审批功能 - 通过 / 失败
[ ] 批准计划功能 - 通过 / 失败
[ ] 驳回计划功能 - 通过 / 失败
[ ] 取消操作测试 - 通过 / 失败
[ ] 完整流程测试 - 通过 / 失败

问题记录:
_________________________________
_________________________________
_________________________________

备注:
_________________________________
_________________________________
```

---

**快速测试完成！** 🎉

如果所有测试都通过，说明采购计划确认功能已经成功实现并可以正常使用了。
