菜品信息展示基准切换变更记录
需求
- 设置页增加“信息展示切换”,可选 50g 和 100g,默认 100g。
- 首页打餐前和打餐时的菜品单价、打餐前的菜品营养按所选重量展示。
实现
- 使用独立的 MMKV 配置保存展示基准重量;缺失或异常值按 100g 读取,不改变服务端下发的首页显示模式。
- 打餐前页面按所选克数换算单价、热量、膳食纤维、维生素 B1/B2/C、钙、铁,并同步更新单价和营养标题。
- 打餐前标题在 Fragment 初始化时就按配置设置,避免延时加载菜品期间短暂显示 100g 文案。
- 带价格打餐页按所选克数展示菜品单价及单位;纯营养打餐页移除始终不可见的固定 100g 价格赋值。
- 菜品信息仍以每克值缓存。实际取餐金额、营养累计和供能占比沿用原有计算。
验证
git diff --check 通过。
- 使用 JDK 8 执行
./gradlew :app:assembleDebug --offline,结果为 BUILD SUCCESSFUL。
- 静态核对:展示基准只用于首页菜品信息文案及换算,取餐结算和累计计算未接入该配置。
待真机验收
- 验证设置项 50g/100g 的选中状态、重启后持久化及返回首页后的展示刷新。
- 对照实际菜品数据检查 50g 展示数值及标题,并确认纯营养模式不显示价格。
本次未执行 Git 暂存、提交、推送或分支切换。