|
|
@@ -44,6 +44,12 @@ Approve
|
|
|
- [ ] 为实体编写单元测试 (`tests/unit/server/`)
|
|
|
- [ ] 为数据库迁移编写集成测试 (`tests/integration/server/`)
|
|
|
- [ ] 为管理后台API编写集成测试 (`tests/integration/server/`)
|
|
|
+- [ ] 实现活动选择组件 (AC: 3)
|
|
|
+ - [ ] 创建ActivitySelect组件,支持活动搜索和选择
|
|
|
+ - [ ] 在RouteForm中集成ActivitySelect组件,替换原有的数字输入框
|
|
|
+ - [ ] 实现活动搜索功能,支持按名称搜索
|
|
|
+ - [ ] 实现活动列表展示,显示活动名称和类型
|
|
|
+ - [ ] 添加活动选择验证
|
|
|
|
|
|
## Dev Notes
|
|
|
|
|
|
@@ -102,6 +108,24 @@ Approve
|
|
|
- **中间件**: `[authMiddleware]`
|
|
|
- **Zod Schema**: 创建、更新、获取、列表Schema
|
|
|
|
|
|
+### 活动选择组件设计
|
|
|
+基于用户体验改进需求,需要实现活动选择组件来替换原有的数字ID输入框:
|
|
|
+
|
|
|
+**ActivitySelect组件功能要求**:
|
|
|
+- 支持活动搜索和选择,提升用户体验
|
|
|
+- 显示活动名称和类型(去程/返程)
|
|
|
+- 支持按活动名称搜索
|
|
|
+- 集成到RouteForm中,替换原有的activityId数字输入框
|
|
|
+- 遵循管理后台组件设计规范
|
|
|
+
|
|
|
+**组件位置**:
|
|
|
+- `src/client/admin/components/ActivitySelect.tsx`
|
|
|
+
|
|
|
+**集成要求**:
|
|
|
+- 在RouteForm中替换现有的activityId输入字段
|
|
|
+- 保持与现有表单验证的兼容性
|
|
|
+- 支持活动列表的异步加载和搜索
|
|
|
+
|
|
|
### 管理后台页面设计
|
|
|
基于 [docs/prd/epic-005-travel-service-core.md#管理后台页面任务],需要实现以下页面:
|
|
|
|
|
|
@@ -226,6 +250,8 @@ const debouncedSearch = useCallback(
|
|
|
- **管理后台页面** (遵循 [文件组织规范](../architecture/admin-dashboard-standards.md#文件组织)):
|
|
|
- `mini/src/pages/admin/activities/ActivityManagementPage.tsx`
|
|
|
- `mini/src/pages/admin/routes/RouteManagementPage.tsx`
|
|
|
+- **活动选择组件**:
|
|
|
+ - `src/client/admin/components/ActivitySelect.tsx`
|
|
|
- **数据库迁移**: `src/server/migrations/` 目录
|
|
|
- **种子数据**: `src/server/seeds/` 目录
|
|
|
|
|
|
@@ -258,6 +284,7 @@ const debouncedSearch = useCallback(
|
|
|
## Change Log
|
|
|
| Date | Version | Description | Author |
|
|
|
|------|---------|-------------|--------|
|
|
|
+| 2025-10-16 | 1.7 | 补充活动选择组件任务,提升用户体验 | Bob (Scrum Master) |
|
|
|
| 2025-10-16 | 1.6 | 完成管理后台页面所有功能:搜索筛选、创建编辑、启用/禁用 | James (Dev Agent) |
|
|
|
| 2025-10-16 | 1.5 | 添加前端RPC实现规范,确保符合管理后台RPC Client使用规范 | Bob (Scrum Master) |
|
|
|
| 2025-10-16 | 1.4 | 添加通用CRUD规范引用,完善API实现细节 | Bob (Scrum Master) |
|