fix: 全仓截图脚本与截图质量修复(assistant/expert/health-monitor 多处截图脚本中 index-v2.html 等失效页面引用改回现存文件名并清理孤儿任务与无引用截图;weight-main-v2 初始化改为解析 ?type= 参数修复设计总览六种目标状态截图雷同问题,蓝牙秤截图任务补 #paired 参数并重拍 weight-main 系列与 bluetooth-scale 共10张截图、删除 weight-main-menu;专家端与管理端补拍 PRD 引用但从未生成的视频进行中截图 video-in-progress.jpg 与 video-detail-in-progress.jpg;体重管理 PRD 修复两处截图断链,设计总览主页节移除切换菜单卡片,各模块 CHANGELOG 同步记录)

This commit is contained in:
liuyunqin
2026-09-07 10:37:08 +08:00
parent 15ca37b892
commit 7f184709f3
25 changed files with 86 additions and 35 deletions
@@ -4,6 +4,17 @@
---
## [2026-09-07] fix: 截图脚本失效页面引用修复
**涉及文件(1个修改):**
- `doc/screenshot-final.mjs` — 根页/健康排查/穿戴监测/环境监测 4 处任务仍引用 `index-v2.html`,相关页面早已统一改名为 `index.html`,脚本再运行会直接 ERR_FILE_NOT_FOUND 中断;全部改回现存文件名
**变更说明:**
- 全仓截图体检:本模块 `doc/screenshots/``-outdoor` 与不带后缀的 base 图字节相同,系脚本为 PRD(引用 base 名)与设计总览(引用场景名)各设一条任务的别名重复,outdoor 本就是页面默认态,文档展示无问题,未改动
- `employee-app/health-monitor/screenshots/`(模块根下旧截图目录)已无任何引用,属历史遗留,未纳入本次改动
---
## [2026-08-28] fix: 设备详情页水质/花粉Tab隐藏右上角综合指数与等级文字
**涉及文件(4个修改):**
@@ -19,11 +19,11 @@ const root = path.resolve(__dirname, '..');
// - 'auto' : 短页面 → 最低 844;长页面 → 真实 scroll 高度
const tasks = [
// ========== 主页 / 健康现状 ==========
{ html: 'index-v2.html', out: 'index', mode: 'auto' },
{ html: 'index.html', out: 'index', mode: 'auto' },
{ html: 'health-status.html', out: 'health-status', mode: 'auto' },
// ========== 健康排查 ==========
{ html: 'health-checkup/index-v2.html', out: 'health-checkup/index', mode: 'auto' },
{ html: 'health-checkup/index.html', out: 'health-checkup/index', mode: 'auto' },
{ html: 'health-checkup/activity-detail.html', out: 'health-checkup/activity-detail', mode: 'auto', query: '?activityStatus=ongoing' },
{ html: 'health-checkup/activity-detail.html', out: 'health-checkup/activity-detail-participated', mode: 'auto', query: '?activityStatus=ongoing&participated=1&submitTime=2026-05-20%2014:32' },
{ html: 'health-checkup/activity-detail.html', out: 'health-checkup/activity-detail-ended', mode: 'auto', query: '?activityStatus=ended' },
@@ -32,7 +32,7 @@ const tasks = [
{ html: 'health-checkup/questionnaire-fill.html', out: 'health-checkup/questionnaire-fill', mode: 'auto' },
// ========== 穿戴监测 ==========
{ html: 'wearable/index-v2.html', out: 'wearable/index', mode: 'auto' },
{ html: 'wearable/index.html', out: 'wearable/index', mode: 'auto' },
{ html: 'wearable/heart-rate.html', out: 'wearable/heart-rate', mode: 'auto' },
{ html: 'wearable/heart-rate-alerts.html', out: 'wearable/heart-rate-alerts', mode: 'auto' },
{ html: 'wearable/blood-oxygen.html', out: 'wearable/blood-oxygen', mode: 'auto' },
@@ -51,17 +51,17 @@ const tasks = [
{ html: 'wearable/exercise.html', out: 'wearable/exercise-month', mode: 'auto', click: { sel: '.tab-item', text: '月' } },
// ========== 环境监测首页(4 Tab - 严格 390×844 ==========
{ html: 'environment/index-v2.html', out: 'environment/index', mode: 'fixed', envTab: 'outdoor' },
{ html: 'environment/index-v2.html', out: 'environment/index-outdoor', mode: 'fixed', envTab: 'outdoor' },
{ html: 'environment/index-v2.html', out: 'environment/index-indoor', mode: 'fixed', envTab: 'indoor' },
{ html: 'environment/index-v2.html', out: 'environment/index-water', mode: 'fixed', envTab: 'water' },
{ html: 'environment/index-v2.html', out: 'environment/index-pollen', mode: 'fixed', envTab: 'pollen' },
{ html: 'environment/index.html', out: 'environment/index', mode: 'fixed', envTab: 'outdoor' },
{ html: 'environment/index.html', out: 'environment/index-outdoor', mode: 'fixed', envTab: 'outdoor' },
{ html: 'environment/index.html', out: 'environment/index-indoor', mode: 'fixed', envTab: 'indoor' },
{ html: 'environment/index.html', out: 'environment/index-water', mode: 'fixed', envTab: 'water' },
{ html: 'environment/index.html', out: 'environment/index-pollen', mode: 'fixed', envTab: 'pollen' },
// ========== 环境监测首页 - 底部弹窗 - 严格 390×844 ==========
{ html: 'environment/index-v2.html', out: 'environment/index-outdoor-sheet', mode: 'fixed', envTab: 'outdoor', clickMarker: true },
{ html: 'environment/index-v2.html', out: 'environment/index-indoor-sheet', mode: 'fixed', envTab: 'indoor', clickMarker: true },
{ html: 'environment/index-v2.html', out: 'environment/index-water-sheet', mode: 'fixed', envTab: 'water', clickMarker: true },
{ html: 'environment/index-v2.html', out: 'environment/index-pollen-sheet', mode: 'fixed', envTab: 'pollen', clickMarker: true },
{ html: 'environment/index.html', out: 'environment/index-outdoor-sheet', mode: 'fixed', envTab: 'outdoor', clickMarker: true },
{ html: 'environment/index.html', out: 'environment/index-indoor-sheet', mode: 'fixed', envTab: 'indoor', clickMarker: true },
{ html: 'environment/index.html', out: 'environment/index-water-sheet', mode: 'fixed', envTab: 'water', clickMarker: true },
{ html: 'environment/index.html', out: 'environment/index-pollen-sheet', mode: 'fixed', envTab: 'pollen', clickMarker: true },
// ========== 环境监测设备详情 / 报警数据 ==========
{ html: 'environment/device-detail.html', out: 'environment/device-detail', mode: 'auto', query: '?tab=outdoor&id=OA001' },
@@ -4,6 +4,21 @@
---
## [2026-09-07] fix: 修复设计总览主页六种目标状态截图雷同问题
**问题与原因:**
- 设计总览"体重管理主页"节 6 张状态截图(已签署/审核中/待签署/已驳回/个人目标/无目标)实际为同一张默认状态图:截图脚本按 `?type=hasact-review` 等 URL 参数请求页面,但 `weight-main-v2.html` 底部硬编码 `setPageType('hasact-signed')`,未读取查询参数
- 连带发现"蓝牙设备"节 `bluetooth-scale.jpg``bluetooth-scale-empty.jpg` 也相同:该页默认即空状态,设备列表需 URL 带 `#paired` 才展示,而脚本默认任务未加 hash、空状态任务的 eval 又是对已是空状态的页面重复置空
**涉及文件:**
- `employee-app/weight-management/weight-main-v2.html`(修改):初始化改为解析 `?type=` 参数(对齐 goal-detail-v2.html 的取参写法),非法值回退 `hasact-signed`
- `employee-app/weight-management/doc/design-overview.html`(修改):体重管理主页节移除"目标类型切换菜单"卡片(9 屏 → 8 屏),节副标题去掉"+ 切换菜单"
- `employee-app/weight-management/doc/PRD.md`(修改):全仓排查时顺带修复两处截图断链——目标详情节"修改目标审核中"指向 `goal-detail.jpg`(脚本产出的审核中状态图即此文件名),吃记录节"餐次下拉浮层"指向 `eat-checkin-meals.jpg`(原名少了一个 s
- `screenshot-weight.mjs`(修改):bluetooth-scale 默认任务加 `query: '#paired'`bluetooth-scale-empty 任务去掉无效 eval;删除 weight-main-menu 截图任务
- `employee-app/weight-management/doc/screenshots/` 下 10 张截图(重拍):weight-main 系列 8 张 + bluetooth-scale 两张,MD5 校验六状态各不相同,目录内已无重复截图;`weight-main-menu.jpg`(删除)
---
## [2026-08-27] refactor: 删除膳食偏好设置页(diet-questionnaire.html
**涉及文件:**
+2 -2
View File
@@ -242,7 +242,7 @@ stateDiagram-v2
![修改目标弹窗](screenshots/goal-detail-edit.jpg)
![修改目标审核中](screenshots/goal-detail-review.jpg)
![修改目标审核中](screenshots/goal-detail.jpg)
**功能说明:** 展示单个活动目标或个人目标的完整信息,含审核状态、目标数据、变化趋势、排行榜与体重报告。
@@ -413,7 +413,7 @@ stateDiagram-v2
- 导航栏:标题为当前日期,右上角"拍照识别"按钮(取景框图标 + 文字,跳转拍照识别页)
- 餐次选择 + 搜索行:餐次下拉(点击展开下拉浮层选择:早餐/午餐/晚餐/加餐,当前餐次高亮)+ 餐品搜索框
![餐次下拉浮层](screenshots/eat-checkin-meal.jpg)
![餐次下拉浮层](screenshots/eat-checkin-meals.jpg)
- 双列布局:左侧餐品分类("已记录"置顶,下接常用/主食/肉蛋奶/蔬菜/水果/饮品/零食)、右侧菜品列表(emoji + 名称 + 千卡/参考份量 + "+"按钮)
- "已记录"分类列表:汇总展示各餐次已记录餐品(emoji + 名称 + 餐次标签 + 智记/自记标签 + 千卡/克数,自记条目可删除),支持搜索过滤
@@ -202,9 +202,9 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-
<section class="section" id="sec-main">
<div class="section__header">
<h2 class="section__title">二、体重管理主页(核心中枢)</h2>
<span class="section__count">9</span>
<span class="section__count">8</span>
</div>
<div class="sub-title">体重管理主页(weight-main-v2.html)· 目标状态 + 记录弹窗 + 切换菜单</div>
<div class="sub-title">体重管理主页(weight-main-v2.html)· 目标状态 + 记录弹窗</div>
<div class="scroll-row">
<div class="card" onclick="openLightbox('screenshots/weight-main.jpg','主页 · 活动已签署')">
<div class="card__img"><img src="screenshots/weight-main.jpg" alt=""></div>
@@ -246,11 +246,6 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-
<div class="card__label">记录成功弹窗</div>
<div class="card__tags"><span class="tag tag--modal">弹窗</span></div>
</div>
<div class="card" onclick="openLightbox('screenshots/weight-main-menu.jpg','主页 · 目标类型切换菜单')">
<div class="card__img"><img src="screenshots/weight-main-menu.jpg" alt=""></div>
<div class="card__label">目标类型切换菜单</div>
<div class="card__tags"><span class="tag tag--modal">浮层</span></div>
</div>
</div>
</section>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 99 KiB

@@ -1310,7 +1310,13 @@ function bindRulerDrag(ruler, cfg, idx) {
document.addEventListener('mouseup', onEnd);
document.addEventListener('touchend', onEnd);
}
setPageType('hasact-signed');
/* 初始状态支持 ?type= 参数(用于演示与截图),非法值回退默认 */
(function() {
var m = location.search.match(new RegExp('[?&]type=([^&]*)'));
var type = m ? decodeURIComponent(m[1]) : 'hasact-signed';
var valid = ['hasact-signed', 'hasact-review', 'hasact-approved', 'hasact-rejected', 'personal', 'none'];
setPageType(valid.indexOf(type) >= 0 ? type : 'hasact-signed');
})();
</script>
</body>
</html>