# Tasks ## 后端实现 - [x] Task 1: 创建 air_quality Django应用 - [x] SubTask 1.1: 创建 `air_quality/` 目录结构(`__init__.py`, `apps.py`, `views.py`, `urls.py`, `tests.py`, `admin.py`, `models.py`, `migrations/`) - [x] SubTask 1.2: 配置 `apps.py` 应用元数据 - [x] Task 2: 实现空气质量查询API视图 - [x] SubTask 2.1: 实现 `AirQualityView` 类(GET和POST方法) - [x] SubTask 2.2: 实现城市名称地理编码(复用 Open-Meteo Geocoding API) - [x] SubTask 2.3: 调用 Open-Meteo 空气质量API获取数据 - [x] SubTask 2.4: 解析并格式化AQI数据(PM2.5, PM10, O3, NO2, SO2, CO, 等级) - [x] SubTask 2.5: 添加参数校验和错误处理 - [x] SubTask 2.6: 添加Swagger文档装饰器 - [x] Task 3: 注册URL路由和应用 - [x] SubTask 3.1: 配置 `air_quality/urls.py` 路由 - [x] SubTask 3.2: 在 `api/urls.py` 中添加 `path('air-quality/', include('air_quality.urls'))` - [x] SubTask 3.3: 在 `settings.py` 的 `INSTALLED_APPS` 中添加 `air_quality` ## 前端实现 - [x] Task 4: 创建AQIDetails页面组件 - [x] SubTask 4.1: 创建 `pages/AQIDetails/` 目录 - [x] SubTask 4.2: 实现 `AQIDetails.tsx` 桌面端页面(Hero + Tabs + 文档 + 测试) - [x] SubTask 4.3: 实现 `AQIDetailsMobile.tsx` 移动端页面 - [x] SubTask 4.4: 创建 `AQIDetails.css` 样式文件(复用ApiDetail设计风格) - [x] Task 5: 添加路由和翻译 - [x] SubTask 5.1: 在 `App.tsx` 中添加 `/api/air-quality-details` 路由 - [x] SubTask 5.2: 在 `locales/zh.json` 中添加中文翻译键 - [x] SubTask 5.3: 在 `locales/en.json` 中添加英文翻译键 - [x] SubTask 5.4: 在 `locales/ja.json`, `locales/ko.json`, `locales/zh-TW.json`, `locales/ru.json` 中添加翻译 ## 集成与验证 - [x] Task 6: 端到端测试 - [x] SubTask 6.1: 验证后端API可通过 `/api/air-quality/?city=北京` 访问 - [x] SubTask 6.2: 验证Swagger文档包含新API - [x] SubTask 6.3: 验证前端页面可通过 `/api/air-quality-details` 访问 - [x] SubTask 6.4: 验证前端测试功能可正确调用后端API # Task Dependencies - Task 2 依赖 Task 1(需要先创建应用结构) - Task 3 依赖 Task 2(需要先实现视图) - Task 5 依赖 Task 4(需要先实现页面) - Task 6 依赖 Task 3 和 Task 5(需要前后端都完成)