# 历史与统计功能 - 快速测试指南

## 访问路径
农事任务 > 历史与统计

## 快速测试步骤

### 第1步：查看归档任务概览 ✅
**操作**：进入"历史与统计"页面

**预期结果**：
- 页面顶部显示4个统计卡片（绿、蓝、黄、紫）
- ✅ 归档任务总数：1（示例数据中只有task-1是已完成状态）
- ✅ 总工时：22h
- ✅ 总成本（估算）：¥1,100
- ✅ 涉及地块：1

### 第2步：测试多维度筛选 ✅

#### 测试2.1：地块筛选
**操作**：
1. 点击"选择地块"下拉框
2. 选择"东区1号地"

**预期结果**：
- 筛选结果显示：1 条记录
- 归档任务明细列表显示1个任务

#### 测试2.2：作物筛选
**操作**：
1. 点击"重置筛选"按钮
2. 点击"选择作物"下拉框
3. 选择"水稻"

**预期结果**：
- 筛选结果显示：1 条记录
- 归档任务明细列表显示水稻相关任务

#### 测试2.3：人员筛选
**操作**：
1. 点击"重置筛选"按钮
2. 点击"选择人员"下拉框
3. 选择"张三"

**预期结果**：
- 筛选结果显示：1 条记录
- 归档任务明细列表显示张三的任务

#### 测试2.4：任务类型筛选
**操作**：
1. 点击"重置筛选"按钮
2. 点击"任务类型"下拉框
3. 选择"播种"

**预期结果**：
- 筛选结果显示：1 条记录
- 归档任务明细列表显示播种任务

#### 测试2.5：组合筛选
**操作**：
1. 选择地块："东区1号地"
2. 选择作物："水稻"
3. 选择人员："张三"
4. 选择类型："播种"

**预期结果**：
- 筛选结果显示：1 条记录
- 所有条件同时满足

#### 测试2.6：重置筛选
**操作**：点击"重置筛选"按钮

**预期结果**：
- 所有下拉框恢复默认状态
- 筛选结果恢复为：1 条记录
- 列表显示所有归档任务

### 第3步：查看归档任务明细 ✅

**操作**：在"归档任务明细"卡片中查看任务列表

**预期结果**：
- 显示1个已完成的任务卡片
- 任务信息包含：
  - ✅ 任务名称："东区1号地水稻播种"
  - ✅ 任务类型：绿色"播种"徽章
  - ✅ 状态：绿色"已完成"徽章
  - ✅ 地块：东区1号地（📍图标）
  - ✅ 人员：张三（👤图标）
  - ✅ 工时：22小时（⏰图标）
  - ✅ 农资：2种农资（📦图标）
  - ✅ 完成日期：2024-03-02（📅图标）
  - ✅ "查看详情"按钮

**操作**：点击"查看详情"按钮

**预期结果**：
- 弹出任务详情对话框
- 显示完整的任务信息

### 第4步：测试成本核算报表 ✅

**操作**：点击黄色"成本核算报表"卡片中的"生成报表"按钮

**预期结果**：
- 弹出成本核算报表对话框
- **成本汇总区域（黄色背景）**：
  - ✅ 人工成本：¥1,100（22h × 50元/h）
  - ✅ 农资成本：¥887（种子 + 浸种剂）
  - ✅ 总成本：¥1,987
  - ✅ 任务数量：1
- **明细表格**：
  - ✅ 表头：任务名称、地块、执行人、工时、人工成本、农资成本、总成本、完成日期
  - ✅ 数据行：东区1号地水稻播种的完整成本数据
  - ✅ 表格可滚动
  - ✅ 悬停行高亮

**操作**：点击"下载报表"按钮

**预期结果**：
- ✅ Toast提示："成本核算报表已生成，共 1 条记录"
- ✅ 对话框关闭

### 第5步：测试绩效考评报表 ✅

**操作**：点击绿色"绩效考评报表"卡片中的"生成报表"按钮

**预期结果**：
- 弹出绩效考评报表对话框
- **绩效汇总区域（绿色背景）**：
  - ✅ 参与人员：1人
  - ✅ 完成任务：1个
  - ✅ 总工时：22h
  - ✅ 平均效率：0.36（1 / (22/8) ≈ 0.36）
- **明细表格**：
  - ✅ 表头：人员、完成任务数、总工时、平均工时、工作效率、绩效评价
  - ✅ 数据行：张三的绩效数据
  - ✅ 绩效评价：黄色"合格"徽章（效率 < 0.8）
  - ✅ 表格可滚动
- **说明文字**：
  - ✅ 显示效率计算公式和评价标准

**操作**：点击"下载报表"按钮

**预期结果**：
- ✅ Toast提示："绩效考评报表已生成，共 1 条记录"
- ✅ 对话框关闭

### 第6步：测试生产追溯报表 ✅

**操作**：点击蓝色"生产追溯报表"卡片中的"生成报表"按钮

**预期结果**：
- 弹出生产追溯报表对话框
- **追溯汇总区域（蓝色背景）**：
  - ✅ 地块数量：1块
  - ✅ 作业记录：1条
  - ✅ 操作类型：1种
  - ✅ 涉及作物：1种
- **追溯明细**：
  - ✅ 显示1个地块卡片
  - ✅ 地块信息：
    - 地块名称：东区1号地（📍图标）
    - 作物：水稻
    - 作业次数：1次作业
  - ✅ 作业历史：
    - 操作类型徽章：绿色"播种"
    - 任务名称：东区1号地水稻播种
    - 执行人：张三
    - 完成日期：2024-03-02
    - 工时：22h
  - ✅ 卡片可滚动

**操作**：点击"下载报表"按钮

**预期结果**：
- ✅ Toast提示："生产追溯报表已生成，共 1 条记录"
- ✅ 对话框关闭

### 第7步：测试数据可视化 ✅

#### 测试7.1：饼图
**位置**：页面下方左侧

**预期结果**：
- ✅ 标题："归档任务类型分布"
- ✅ 饼图显示各任务类型占比
- ✅ 播种：100%（只有1个播种任务）
- ✅ 彩色区分
- ✅ 百分比标签

#### 测试7.2：折线图
**位置**：页面下方右侧

**预期结果**：
- ✅ 标题："任务完成趋势"
- ✅ 绿色线：完成任务趋势
- ✅ 蓝色线：新增任务趋势
- ✅ X轴：日期
- ✅ Y轴：数量
- ✅ 图例显示
- ✅ Tooltip悬停提示

### 第8步：测试空状态 ✅

**操作**：
1. 设置筛选条件为：
   - 人员：李四（没有已完成的任务）

**预期结果**：
- ✅ 筛选结果显示：0 条记录
- ✅ 归档任务明细列表显示空状态：
  - 文件图标
  - 文字："没有符合条件的归档任务"

### 第9步：测试UI响应 ✅

#### 测试9.1：卡片悬停效果
**操作**：鼠标悬停在归档任务明细卡片上

**预期结果**：
- ✅ 卡片显示阴影效果
- ✅ 过渡动画流畅

#### 测试9.2：滚动列表
**操作**：如果任务很多，测试列表滚动

**预期结果**：
- ✅ 列表高度限制为96（max-h-96）
- ✅ 滚动条出现
- ✅ 滚动流畅

#### 测试9.3：报表表格滚动
**操作**：打开任意报表，如果数据很多，测试表格滚动

**预期结果**：
- ✅ 表格高度限制为96
- ✅ 表头固定（sticky）
- ✅ 内容可滚动
- ✅ 滚动流畅

## 验收标准

### ✅ 功能完整性
- [ ] 归档任务自动识别（status === '已完成'）
- [ ] 4个统计指标正确计算
- [ ] 6个筛选维度全部可用
- [ ] 筛选结果实时更新
- [ ] 重置筛选功能正常
- [ ] 归档任务列表正确显示
- [ ] 查看详情按钮可用
- [ ] 成本核算报表数据正确
- [ ] 绩效考评报表数据正确
- [ ] 生产追溯报表数据正确
- [ ] 报表下载功能正常
- [ ] 饼图正确显示
- [ ] 折线图正确显示

### ✅ 数据准确性
- [ ] 成本计算公式正确（人工50元/h）
- [ ] 农资成本计算正确
- [ ] 总成本 = 人工 + 农资
- [ ] 工作效率计算正确
- [ ] 绩效评价等级准确
- [ ] 地块分组正确
- [ ] 作业历史时间排序正确

### ✅ UI/UX
- [ ] 4个统计卡片颜色正确（绿、蓝、黄、紫）
- [ ] 3个报表卡片颜色正确（黄、绿、蓝）
- [ ] 筛选器布局整齐（6列）
- [ ] 明细列表信息完整（5列）
- [ ] 报表汇总区域颜色正确
- [ ] 表格表头固定
- [ ] 空状态提示友好
- [ ] 悬停效果明显
- [ ] Toast提示准确

### ✅ 性能
- [ ] 页面加载快速
- [ ] 筛选响应及时
- [ ] 报表生成快速
- [ ] 滚动流畅无卡顿

## 常见问题

### Q1：为什么归档任务总数只有1？
**A**：示例数据中只有task-1的状态是"已完成"，其他任务还在进行中或待验收。

### Q2：成本核算中的价格是真实的吗？
**A**：不是。当前使用固定估算价格：
- 人工：50元/小时
- 农资（kg）：5元/kg
- 农资（L）：10元/L
- 其他：20元/单位

实际应用需要配置真实价格。

### Q3：为什么我的绩效是"合格"？
**A**：工作效率 = 完成任务数 / (总工时 / 8)
- 如果22小时完成1个任务，效率 = 1 / (22/8) = 0.36 < 0.8，评为"合格"
- 如果8小时完成1个任务，效率 = 1 / (8/8) = 1.0，评为"良好"
- 如果6小时完成1个任务，效率 = 1 / (6/8) = 1.33 > 1.2，评为"优秀"

### Q4：筛选后为什么没有结果？
**A**：检查筛选条件是否过于严格。可以：
1. 点击"重置筛选"清除所有条件
2. 逐个添加条件，观察结果变化

### Q5：如何添加更多归档任务？
**A**：在"任务管理"或"任务状态监控"页面，将任务状态改为"已完成"，任务会自动归档。

## 测试数据说明

当前示例数据中的已完成任务：
```
ID: task-1
名称：东区1号地水稻播种
类型：播种
地块：东区1号地（field-1）
作物：水稻
执行人：张三
团队：第一作业组
工时：22小时（实际）/ 25小时（计划）
农资：
  - 水稻种子：177 kg
  - 浸种剂：0.5 L
完成日期：2024-03-02
创建来源：计划生成
```

## 快速验证清单

打印此清单，逐项验证：

- [ ] 归档统计概览正确
- [ ] 地块筛选工作正常
- [ ] 作物筛选工作正常
- [ ] 人员筛选工作正常
- [ ] 类型筛选工作正常
- [ ] 时间筛选工作正常
- [ ] 组合筛选工作正常
- [ ] 重置筛选功能正常
- [ ] 归档任务列表显示正确
- [ ] 查看详情功能正常
- [ ] 成本核算报表正确
- [ ] 绩效考评报表正确
- [ ] 生产追溯报表正确
- [ ] 报表下载提示正常
- [ ] 饼图显示正常
- [ ] 折线图显示正常
- [ ] 空状态提示友好
- [ ] 悬停效果明显
- [ ] 滚动流畅

## 测试完成时间
预计：15-20分钟

## 问题反馈
发现问题请记录：
1. 问题描述
2. 复现步骤
3. 预期结果
4. 实际结果
5. 截图（如有）
