Story 007.004: 购票页面优化
Status
Ready for Review
Story
As a 小程序用户,
I want 在班次页面暂时隐藏出发日期选择功能,
so that 能够简化操作步骤,提升购票体验。
Acceptance Criteria
- 在班次页面暂时隐藏出发日期选择
- 保持现有的其他购票流程完整
- 验证购票功能正常工作
Tasks / Subtasks
Dev Notes
技术栈要求
- 前端框架: Taro 4.x + React [Source: architecture/tech-stack.md#现有技术栈维护]
- 小程序平台: 微信小程序 [Source: architecture/tech-stack.md#现有技术栈维护]
- 状态管理: React Query (TanStack Query) [Source: architecture/tech-stack.md#现有技术栈维护]
- UI组件: 自定义组件 + Heroicons [Source: architecture/tech-stack.md#现有技术栈维护]
项目结构
- 班次页面位置:
mini/src/pages/schedule-list/ScheduleListPage.tsx [Source: architecture/source-tree.md#实际项目结构]
- 日期选择组件: 位于班次页面第225-256行,包含日期选择UI和逻辑
- 测试文件位置:
mini/tests/pages/ [Source: architecture/testing-strategy.md#taro小程序测试体系]
现有实现分析
- 班次页面包含日期选择功能,生成未来7天的日期选项
- 日期选择通过
selectedDate 状态管理
- 日期变更触发
handleDateChange 函数,重新查询路线数据
- 当前实现使用水平滚动视图显示日期选项
技术约束
- 保持现有的班次查询API不变
- 确保页面布局调整后不影响其他功能
- 保持React Query数据获取逻辑完整
项目结构注意事项
- 班次页面位于正确的项目结构位置
- 修改仅限于前端UI层面,不涉及后端API
- 需要确保页面布局调整后保持响应式设计
Testing
测试标准
- 测试框架: Jest + @testing-library/react + React Query [Source: architecture/testing-strategy.md#taro小程序测试体系]
- 测试位置:
mini/tests/pages/schedule-list/ScheduleListPage.test.tsx [Source: architecture/testing-strategy.md#taro小程序测试体系]
- 测试模式: 页面级集成测试 [Source: architecture/testing-strategy.md#taro小程序测试模式]
测试要求
- 验证日期选择UI组件已隐藏
- 确保班次列表正常显示和查询
- 验证购票流程完整性
- 确保现有功能无回归
测试策略
- 使用统一的Taro API mock [Source: architecture/testing-strategy.md#taro小程序测试模式]
- 使用React Query测试包装器 [Source: architecture/testing-strategy.md#taro小程序测试模式]
- 验证页面渲染和用户交互 [Source: architecture/testing-strategy.md#taro小程序测试模式]
Change Log
| Date |
Version |
Description |
Author |
| 2025-10-31 |
1.0 |
创建故事草稿 |
Bob (Scrum Master) |
| 2025-10-31 |
1.1 |
实现班次页面日期选择功能隐藏 |
James (Developer) |
Dev Agent Record
Agent Model Used
Debug Log References
- 成功识别班次页面中的日期选择组件(第225-256行)
- 已隐藏日期选择UI组件,使用注释方式保留代码
- 创建了完整的班次页面测试文件
- 验证了购票流程完整性
Completion Notes List
- ✅ 成功识别并定位班次页面中的日期选择组件
- ✅ 通过注释方式隐藏了日期选择UI组件,保持代码完整性
- ✅ 验证了班次列表正常显示和购票流程完整性
- ✅ 创建了完整的班次页面测试文件,包含4个测试场景
- ✅ 所有相关测试通过,功能验证正常
- ✅ 构建成功,无编译错误
File List
QA Results