Files
platforms/docs/开发日志_首页视觉与入口_20260911.md
czl231 3ef33b531d 已完成用户APP首期功能开发
交付用户端首期页面、配套接口、后台资源及测试文档。用户APP构建、静态分析和三个管理后台构建通过;完整测试仍有2项失败,后端模型注释检查未通过,详见交付记录。
2026-09-13 00:57:32 +08:00

50 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 首页视觉与入口开发日志
操作时间2026-09-11
操作类型:修改、扩展
影响模块:用户端首页、公告领域模型、共享底部导航
## 操作前状态
首页能读取服务归属和公告,但设备卡、快捷入口、安全记录、公告列表与产品设计图的高度和信息层级差异明显。“查看详情”仍弹未开放提示,已完成的设备列表和设备分组无法从首页进入;公告只显示版本号,没有服务端已有的摘要和日期。游客服务归属没有使用设计卡片。
## 具体操作
1. 将服务归属卡内边距和图标尺寸收敛到设计比例,并让游客状态复用同一张卡片。
2. 重排设备未接入状态,保留四项指标结构且不展示虚构遥测。
3. 将设备详情、设备分组和一键报修接入现有真实路由;受保护入口保留登录回跳。
4. 快捷入口和安全信息使用设计稿相同的信息层级;未实现能力通过点击弹层说明“暂未开放”。
5. 公告领域模型读取服务端`created_at`,首页展示前两条真实标题、摘要和日期并进入公告正文。
6. 用户端底部导航高度调整为64像素并恢复选中项浅蓝背景。
## 代码变更
- `apps/user_app/lib/ui/features/home/home_page.dart`:首页布局、真实入口、公告行和未开放入口。
- `apps/user_app/lib/ui/features/home/service_relation_card.dart`:紧凑布局及游客可点击状态。
- `apps/user_app/lib/ui/features/home/device_status_placeholder.dart`:诚实设备缺项结构。
- `apps/user_app/lib/ui/core/feature_entry.dart`:新增紧凑和状态文字显示选项,默认行为保持兼容。
- `apps/user_app/lib/domain/models/primary_models.dart``apps/user_app/lib/data/repositories/primary_repository.dart`:公告日期映射。
- `apps/heqi_design_system/lib/src/theme.dart`:用户端底部导航视觉。
- `apps/user_app/test/support/a1_fixture.dart``apps/user_app/test/ui/primary_pages_test.dart`:公告双行数据及入口测试。
## 行为变化
修改前:首页“查看详情”无法打开已完成设备页,分组入口仍显示未开放,公告显示版本号。
修改后:首页能进入设备、设备分组、报修及公告正文;公告显示真实摘要和日期;没有接口的设备值仍显示“暂不可查询”,其余未接入入口点击后明确说明当前不可用。
## 验证结果
- `flutter analyze`:通过。
- `flutter test --no-pub`161项通过。
- 图03视觉用例320、360、390、430像素宽1.0与1.3倍文字共8项通过。
- `flutter build web --release --dart-define=API_BASE_URL=http://127.0.0.1:12426`:通过。
- 内置浏览器:远程公告标题、摘要、日期显示成功;扫码添加弹出“暂未开放”;设备详情游客路径进入登录页。
- 并排检查:设计图保持宽高比,主要卡片的顺序、宽度、圆角和密度已收敛。
## 风险评估
设备遥测、扫码、蓝牙、安全告警与气瓶详情尚无首期接口,首页不能显示设计稿中的示例状态。公告日期使用现有`created_at`服务端后续若增加独立发布时间应改为优先读取发布时间。共享导航仅调整用户端品牌服务端App保持原高度。