diff --git a/employee-app/health-monitor/doc/PRD.md b/employee-app/health-monitor/doc/PRD.md new file mode 100644 index 0000000..a2185e7 --- /dev/null +++ b/employee-app/health-monitor/doc/PRD.md @@ -0,0 +1,514 @@ +# 健康监测(员工端)产品需求文档 + +## 模块概述 + +健康监测员工端为员工提供个人健康数据的查看与管理能力,涵盖健康排查打卡签到、穿戴设备监测数据查看(心率/血氧/血压/体温/压力/步数/睡眠/心电图/锻炼)、体重监测数据与报告、环境监测设备数据查看与报警记录等功能。 + +### 页面导航结构 + +``` +健康监测(员工端) +├── 健康监测主页 +├── 健康排查 +│ ├── 健康排查首页(积分/排行榜) +│ ├── 每日健康打卡(问卷填写) +│ ├── 打卡记录(日历+列表) +│ ├── 问卷详情(只读回顾) +│ └── 题目设置(自定义显示) +├── 穿戴监测 +│ ├── 穿戴监测首页(指标卡片) +│ ├── 心率详情 → 心率预警历史 +│ ├── 血氧详情 → 血氧预警历史 +│ ├── 血压详情 → 血压预警历史 +│ ├── 体温详情 → 体温预警历史 +│ ├── 压力详情 → 压力预警历史 +│ ├── 步数详情 +│ ├── 睡眠详情 +│ ├── 心电图列表 → 心电图详情 +│ └── 锻炼记录 +├── 体重监测 +│ ├── 体重监测首页 +│ ├── 历史数据(图表/列表) +│ └── 详细报告 +└── 环境监测 + ├── 环境监测首页(地图/列表) + ├── 设备详情 + └── 报警数据 +``` + +## 页面清单 + +### 健康监测主页 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 1 | 健康监测主页 | index.html | 页面 | + +### 健康排查 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 2 | 健康排查首页 | health-screening/index.html | 页面 | +| 3 | 每日健康打卡 | health-screening/questionnaire-fill.html | 页面 | +| 4 | 打卡记录 | health-screening/checkin-record.html | 页面 | +| 5 | 问卷详情 | health-screening/questionnaire-detail.html | 页面 | +| 6 | 题目设置 | health-screening/questionnaire-setting.html | 页面 | + +### 穿戴监测 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 7 | 穿戴监测首页 | wearable/index.html | 页面 | +| 8 | 心率详情 | wearable/heart-rate.html | 页面 | +| 9 | 心率预警历史 | wearable/heart-rate-alerts.html | 页面 | +| 10 | 血氧详情 | wearable/blood-oxygen.html | 页面 | +| 11 | 血氧预警历史 | wearable/blood-oxygen-alerts.html | 页面 | +| 12 | 血压详情 | wearable/blood-pressure.html | 页面 | +| 13 | 血压预警历史 | wearable/blood-pressure-alerts.html | 页面 | +| 14 | 体温详情 | wearable/temperature.html | 页面 | +| 15 | 体温预警历史 | wearable/temperature-alerts.html | 页面 | +| 16 | 压力详情 | wearable/stress.html | 页面 | +| 17 | 压力预警历史 | wearable/stress-alerts.html | 页面 | +| 18 | 步数详情 | wearable/steps.html | 页面 | +| 19 | 睡眠详情 | wearable/sleep.html | 页面 | +| 20 | 心电图列表 | wearable/ecg.html | 页面 | +| 21 | 心电图详情 | wearable/ecg-detail.html | 页面 | +| 22 | 锻炼记录 | wearable/exercise.html | 页面 | + +### 体重监测 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 23 | 体重监测首页 | weight/index.html | 页面 | +| 24 | 历史数据 | weight/history.html | 页面 | +| 25 | 详细报告 | weight/report-detail.html | 页面 | + +### 环境监测 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 26 | 环境监测首页 | environment/index.html | 页面 | +| 27 | 设备详情 | environment/device-detail.html | 页面 | +| 28 | 报警数据 | environment/alarm-data.html | 页面 | + +--- + +## 逐页说明 + +--- + +## 一、健康监测主页 + +### 1. 健康监测主页(index.html) + +![页面截图](screenshots/index.jpg) + +**功能说明:** 员工端健康监测模块的主入口,展示穿戴设备连接状态和多个健康指标卡片概览。 + +**主要UI元素:** +- 设备连接状态栏(显示设备名称和连接状态) +- 监测卡片网格:步数、睡眠、心率、体温、血氧、压力、血压、心电图、锻炼 + +**交互说明:** +- 点击各指标卡片进入对应的详情页面 + +--- + +## 二、健康排查 + +### 2. 健康排查首页(health-screening/index.html) + +![页面截图](screenshots/health-screening/index.jpg) + +**功能说明:** 展示员工健康打卡积分、连续签到天数和积分排行榜,引导员工进行每日打卡。 + +**主要UI元素:** +- 积分卡片(显示当前积分、连续签到天数) +- "立即打卡"按钮 +- "打卡记录"按钮 +- 积分排行榜列表 + +**交互说明:** +- 点击"立即打卡"跳转到每日健康打卡页面 +- 点击"打卡记录"跳转到打卡记录页面 + +--- + +### 3. 每日健康打卡(health-screening/questionnaire-fill.html) + +![页面截图](screenshots/health-screening/questionnaire-fill.jpg) + +**功能说明:** 员工填写每日健康自查问卷,包含身体状况、心理状态、生活习惯三个类别共8个问题。 + +**主要UI元素:** +- 分类标题(身体状况、心理状态、生活习惯) +- 问题卡片(含必填/选填标签) +- 单选选项 +- 提交按钮 +- 成功弹窗(显示积分奖励) + +**业务规则:** +- 必填题目必须全部作答才能提交 +- 选填题目可跳过 +- 提交成功后弹窗显示获得的积分 + +**交互说明:** +- 点击选项选中答案 +- 点击"提交"按钮提交问卷 +- 提交成功弹出积分奖励弹窗 + +--- + +### 4. 打卡记录(health-screening/checkin-record.html) + +![页面截图](screenshots/health-screening/checkin-record.jpg) + +**功能说明:** 以日历视图和列表形式展示员工的打卡历史记录。 + +**主要UI元素:** +- 月份日历(已打卡日期标记) +- 日历展开/收起按钮 +- 历史记录列表(打卡时间、日期、积分) + +**交互说明:** +- 点击日历导航按钮切换月份 +- 点击展开/收起按钮折叠日历 +- 点击历史记录项查看问卷详情 + +--- + +### 5. 问卷详情(health-screening/questionnaire-detail.html) + +![页面截图](screenshots/health-screening/questionnaire-detail.jpg) + +**功能说明:** 只读展示已提交的每日健康自查问卷的详细内容和答案。 + +**主要UI元素:** +- 问卷信息头(标题、提交时间、积分) +- 分类问题卡片(身体状况、心理状态、生活习惯) +- 已选中的选项(高亮显示) + +**业务规则:** +- 纯只读页面,不可修改已提交的答案 + +--- + +### 6. 题目设置(health-screening/questionnaire-setting.html) + +![页面截图](screenshots/health-screening/questionnaire-setting.jpg) + +**功能说明:** 允许员工自定义问卷中选填题目的显示/隐藏,个性化打卡体验。 + +**主要UI元素:** +- 提示信息 +- 分类标题 +- 题目卡片(含开关按钮) +- 保存按钮 + +**业务规则:** +- 必填题目的开关为禁用状态,不可关闭 +- 选填题目可自由开启/关闭 + +**交互说明:** +- 点击开关切换选填题目的显示状态 +- 点击"保存"按钮保存设置 + +--- + +## 三、穿戴监测 + +### 7. 穿戴监测首页(wearable/index.html) + +![页面截图](screenshots/wearable/index.jpg) + +**功能说明:** 穿戴设备监测数据的主页,以卡片网格形式展示各项健康指标的最新数据。 + +**主要UI元素:** +- 设备连接状态栏 +- 监测卡片网格:步数、睡眠、心率、体温、血氧、压力、血压、心电图、锻炼 + +**交互说明:** +- 点击各卡片进入对应详情页面 + +--- + +### 8. 心率详情(wearable/heart-rate.html) + +![页面截图](screenshots/wearable/heart-rate.jpg) + +**功能说明:** 展示心率监测数据的详细信息,支持日/周/月/年多时间维度查看。 + +**主要UI元素:** +- 时间维度Tab(日/周/月/年) +- 当前心率大字显示 +- 折线趋势图 +- 最高/最低/平均值统计卡片 +- "查看预警历史"按钮 + +**交互说明:** +- 点击时间Tab切换时间维度,图表数据随之更新 +- 点击"查看预警历史"跳转到心率预警历史页面 + +--- + +### 9. 心率预警历史(wearable/heart-rate-alerts.html) + +![页面截图](screenshots/wearable/heart-rate-alerts.jpg) + +**功能说明:** 展示心率预警记录列表,支持按年份和月份筛选。 + +**主要UI元素:** +- 预警统计卡片(本月预警次数) +- 筛选按钮 +- 预警记录卡片(时间、等级、数值、持续时长、触发原因) +- 时间筛选弹窗(年份/月份下拉) + +**业务规则:** +- 预警等级:严重(红色)、警告(橙色) + +**交互说明:** +- 点击筛选按钮打开时间筛选弹窗 +- 选择年份和月份后点击"确定"应用筛选 + +--- + +### 10-11. 血氧详情与预警历史 + +**血氧详情(wearable/blood-oxygen.html)** 和 **血氧预警历史(wearable/blood-oxygen-alerts.html)** 的页面结构与心率详情/预警历史一致,展示血氧监测数据和预警记录。 + +![血氧详情](screenshots/wearable/blood-oxygen.jpg) +![血氧预警](screenshots/wearable/blood-oxygen-alerts.jpg) + +--- + +### 12-13. 血压详情与预警历史 + +![血压详情](screenshots/wearable/blood-pressure.jpg) +![血压预警](screenshots/wearable/blood-pressure-alerts.jpg) + +**血压详情(wearable/blood-pressure.html):** 展示收缩压/舒张压双线图表,统计卡片分别显示收缩压和舒张压的最高/最低值。 + +**血压预警历史(wearable/blood-pressure-alerts.html):** 预警记录卡片同时显示收缩压和舒张压数值。 + +--- + +### 14-15. 体温详情与预警历史 + +**体温详情(wearable/temperature.html)** 和 **体温预警历史(wearable/temperature-alerts.html)** 的页面结构与心率一致。 + +![体温详情](screenshots/wearable/temperature.jpg) +![体温预警](screenshots/wearable/temperature-alerts.jpg) + +--- + +### 16-17. 压力详情与预警历史 + +**压力详情(wearable/stress.html)** 和 **压力预警历史(wearable/stress-alerts.html)** 的页面结构与心率一致,额外显示压力等级评估徽章。 + +![压力详情](screenshots/wearable/stress.jpg) +![压力预警](screenshots/wearable/stress-alerts.jpg) + +--- + +### 18. 步数详情(wearable/steps.html) + +![页面截图](screenshots/wearable/steps.jpg) + +**功能说明:** 展示步数数据,支持日/周/月/年查看,显示步数、消耗热量和距离换算。 + +**主要UI元素:** +- 时间维度Tab(日/周/月/年) +- 步数大字显示 +- 折线趋势图 +- 消耗热量和距离统计卡片 + +**交互说明:** +- 点击Tab切换时间维度 + +--- + +### 19. 睡眠详情(wearable/sleep.html) + +![页面截图](screenshots/wearable/sleep.jpg) + +**功能说明:** 展示睡眠数据,支持日/周/月/年查看,显示睡眠时长、阶段分布和质量分析。 + +**主要UI元素:** +- 时间维度Tab(日/周/月/年) +- 日期切换器 +- 睡眠时长卡片 +- Hypnogram 睡眠阶段图(日视图)/ 堆积柱状图(周月年视图) +- 睡眠阶段统计卡片(深睡、浅睡、REM、清醒) + +**交互说明:** +- 点击Tab切换时间维度 +- 点击日期箭头切换日期 + +--- + +### 20. 心电图列表(wearable/ecg.html) + +![页面截图](screenshots/wearable/ecg.jpg) + +**功能说明:** 展示心电图记录列表,支持按类型筛选。 + +**主要UI元素:** +- 筛选标签(全部、窦性心律、房颤、高低心率、不确定,含记录数) +- 心电图卡片(类型、时间、心率、微型波形图) + +**交互说明:** +- 点击筛选标签过滤心电图记录 +- 点击卡片跳转到心电图详情页面 + +--- + +### 21. 心电图详情(wearable/ecg-detail.html) + +![页面截图](screenshots/wearable/ecg-detail.jpg) + +**功能说明:** 展示单条心电图的完整波形图、心率数据和诊断结果。 + +**主要UI元素:** +- 心电图类型和记录时间 +- 心率显示 +- 完整心电图波形(可横向滑动) +- 详细信息卡片(分类结果、时间、心率等) + +**交互说明:** +- 左右滑动查看完整心电图波形 + +--- + +### 22. 锻炼记录(wearable/exercise.html) + +![页面截图](screenshots/wearable/exercise.jpg) + +**功能说明:** 展示锻炼记录,支持周/月维度查看,显示锻炼次数、时长、消耗热量和距离。 + +**主要UI元素:** +- 时间维度Tab(周/月) +- 日期切换器 +- 概览卡片(锻炼次数、总时长、消耗热量、总距离) +- 锻炼记录卡片(运动类型、时间、四项指标) +- 柱状图趋势 +- 统计摘要卡片 + +**交互说明:** +- 点击Tab切换周/月视图 +- 点击日期箭头切换日期 + +--- + +## 四、体重监测 + +### 23. 体重监测首页(weight/index.html) + +![页面截图](screenshots/weight/index.jpg) + +**功能说明:** 展示最近一次体重测量数据和详细身体指标。 + +**主要UI元素:** +- 最近测量卡片(体重、变化趋势箭头、身高、BMI) +- 详细信息卡片(体脂率、体脂肪量、基础代谢) +- "查看历史"按钮 +- 健康建议卡片 + +**交互说明:** +- 点击"查看历史"跳转到历史数据页面 + +--- + +### 24. 历史数据(weight/history.html) + +![页面截图](screenshots/weight/history.jpg) + +**功能说明:** 展示体重历史数据,支持图表和列表两种视图,支持多时间范围筛选。 + +**主要UI元素:** +- 时间Tab(近7天/30天/3个月) +- 视图切换按钮(图表/列表) +- 统计卡片(最高/最低/平均/变化) +- 趋势折线图(含数据点Tip) +- 历史记录列表 + +**交互说明:** +- 点击Tab切换时间范围 +- 点击视图按钮切换图表/列表 +- 点击图表数据点显示详细Tip +- 点击列表项跳转到详细报告 + +--- + +### 25. 详细报告(weight/report-detail.html) + +![页面截图](screenshots/weight/report-detail.jpg) + +**功能说明:** 展示单次体重测量的完整数据报告,根据设备类型显示不同指标。 + +**主要UI元素:** +- 头部信息卡片(时间、设备、体重、BMI标签) +- 数据分类卡片(基础指标、水分蛋白质、肌肉骨骼、脂肪分析等) +- BMI指示条 +- 节段数据表格 + +**业务规则:** +- 根据URL参数 device 类型(体重秤/蓝牙秤/体脂仪)动态渲染对应的数据内容 +- 体脂仪设备显示最完整的数据(含节段分析) + +--- + +## 五、环境监测 + +### 26. 环境监测首页(environment/index.html) + +![页面截图](screenshots/environment/index.jpg) + +**功能说明:** 展示环境监测设备分布和数据,支持地图和列表两种视图,支持四种监测类型切换。 + +**主要UI元素:** +- 监测类型Tab(室外空气、室内空气、水质、花粉) +- 地图视图(设备标记、图例、搜索框、定位按钮) +- 列表视图(含筛选和搜索) +- 底部弹窗(设备简要信息) + +**交互说明:** +- 点击Tab切换监测类型 +- 点击视图按钮切换地图/列表 +- 点击设备标记或列表项弹出底部弹窗 +- 点击弹窗中"查看详情"跳转到设备详情页 + +--- + +### 27. 设备详情(environment/device-detail.html) + +![页面截图](screenshots/environment/device-detail.jpg) + +**功能说明:** 展示单个环境监测设备的详细数据,包括当前指标、等级评价和变化趋势。 + +**主要UI元素:** +- 等级名称和指数显示 +- 主卡片(位置、时间、描述、仪表盘、指标网格) +- 变化趋势卡片(指标选择下拉、时间Tab、柱状图) +- "报警数据"按钮 + +**交互说明:** +- 点击指标下拉选择不同监测指标 +- 点击时间Tab切换近24小时/7日/30日 +- 点击"报警数据"跳转到报警数据页面 + +--- + +### 28. 报警数据(environment/alarm-data.html) + +![页面截图](screenshots/environment/alarm-data.jpg) + +**功能说明:** 展示环境监测设备的报警记录,支持按日期范围和报警类型筛选。 + +**主要UI元素:** +- 筛选区(日期范围、类型下拉) +- 统计条(报警总数) +- 报警卡片列表(报警值、阈值范围、设备信息) + +**交互说明:** +- 设置日期范围和类型后点击"查询"筛选 +- 点击"重置"恢复默认筛选条件 diff --git a/employee-app/health-monitor/doc/screenshots/environment/alarm-data.jpg b/employee-app/health-monitor/doc/screenshots/environment/alarm-data.jpg new file mode 100644 index 0000000..bbf5dc7 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/environment/alarm-data.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/environment/device-detail.jpg b/employee-app/health-monitor/doc/screenshots/environment/device-detail.jpg new file mode 100644 index 0000000..d6c8f8f Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/environment/device-detail.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/environment/index.jpg b/employee-app/health-monitor/doc/screenshots/environment/index.jpg new file mode 100644 index 0000000..067956f Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/environment/index.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/health-screening/checkin-record.jpg b/employee-app/health-monitor/doc/screenshots/health-screening/checkin-record.jpg new file mode 100644 index 0000000..28f3787 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/health-screening/checkin-record.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/health-screening/index.jpg b/employee-app/health-monitor/doc/screenshots/health-screening/index.jpg new file mode 100644 index 0000000..558b8aa Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/health-screening/index.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-detail.jpg b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-detail.jpg new file mode 100644 index 0000000..c517cd6 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-detail.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-fill.jpg b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-fill.jpg new file mode 100644 index 0000000..974b8b4 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-fill.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-setting.jpg b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-setting.jpg new file mode 100644 index 0000000..510d01b Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/health-screening/questionnaire-setting.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/index.jpg b/employee-app/health-monitor/doc/screenshots/index.jpg new file mode 100644 index 0000000..3c97c88 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/index.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen-alerts.jpg b/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen-alerts.jpg new file mode 100644 index 0000000..12097fd Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen-alerts.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen.jpg b/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen.jpg new file mode 100644 index 0000000..8f7460a Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/blood-oxygen.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure-alerts.jpg b/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure-alerts.jpg new file mode 100644 index 0000000..eda549a Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure-alerts.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure.jpg b/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure.jpg new file mode 100644 index 0000000..3b50884 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/blood-pressure.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/ecg-detail.jpg b/employee-app/health-monitor/doc/screenshots/wearable/ecg-detail.jpg new file mode 100644 index 0000000..3c53cb4 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/ecg-detail.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/ecg.jpg b/employee-app/health-monitor/doc/screenshots/wearable/ecg.jpg new file mode 100644 index 0000000..5fef048 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/ecg.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/exercise.jpg b/employee-app/health-monitor/doc/screenshots/wearable/exercise.jpg new file mode 100644 index 0000000..655b1cf Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/exercise.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/heart-rate-alerts.jpg b/employee-app/health-monitor/doc/screenshots/wearable/heart-rate-alerts.jpg new file mode 100644 index 0000000..81e75d1 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/heart-rate-alerts.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/heart-rate.jpg b/employee-app/health-monitor/doc/screenshots/wearable/heart-rate.jpg new file mode 100644 index 0000000..c1ebabd Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/heart-rate.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/index.jpg b/employee-app/health-monitor/doc/screenshots/wearable/index.jpg new file mode 100644 index 0000000..495eb56 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/index.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/sleep.jpg b/employee-app/health-monitor/doc/screenshots/wearable/sleep.jpg new file mode 100644 index 0000000..8a1e249 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/sleep.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/steps.jpg b/employee-app/health-monitor/doc/screenshots/wearable/steps.jpg new file mode 100644 index 0000000..b3de317 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/steps.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/stress-alerts.jpg b/employee-app/health-monitor/doc/screenshots/wearable/stress-alerts.jpg new file mode 100644 index 0000000..2c2e955 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/stress-alerts.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/stress.jpg b/employee-app/health-monitor/doc/screenshots/wearable/stress.jpg new file mode 100644 index 0000000..e064749 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/stress.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/temperature-alerts.jpg b/employee-app/health-monitor/doc/screenshots/wearable/temperature-alerts.jpg new file mode 100644 index 0000000..4e133dc Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/temperature-alerts.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/wearable/temperature.jpg b/employee-app/health-monitor/doc/screenshots/wearable/temperature.jpg new file mode 100644 index 0000000..d0a9378 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/wearable/temperature.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/weight/history.jpg b/employee-app/health-monitor/doc/screenshots/weight/history.jpg new file mode 100644 index 0000000..4147259 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/weight/history.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/weight/index.jpg b/employee-app/health-monitor/doc/screenshots/weight/index.jpg new file mode 100644 index 0000000..f299b69 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/weight/index.jpg differ diff --git a/employee-app/health-monitor/doc/screenshots/weight/report-detail.jpg b/employee-app/health-monitor/doc/screenshots/weight/report-detail.jpg new file mode 100644 index 0000000..fd8d8b3 Binary files /dev/null and b/employee-app/health-monitor/doc/screenshots/weight/report-detail.jpg differ diff --git a/index.html b/index.html index fd100e9..0fcc018 100644 --- a/index.html +++ b/index.html @@ -289,7 +289,7 @@ const SITE_MAP = [ { file:'ano-result.html', label:'结果异常' } ]}, { name:'运动管理', dir:'web-admin/exercise', pages:[] }, - { name:'健康监测', dir:'web-admin/health-monitor', entry:'archive-personal.html', pages:[ + { name:'健康监测', dir:'web-admin/health-monitor', entry:'archive-personal.html', prd:'web-admin/health-monitor/doc/PRD.md', done:true, pages:[ { file:'archive-personal.html', label:'个人监测数据' }, { file:'archive-unit.html', label:'单位报表数据' }, { file:'archive-unit-health-checkup-detail.html', label:'单位报表-健康排查详情' }, @@ -511,20 +511,24 @@ const SITE_MAP = [ { name:'体重管理', dir:'employee-app/weight-management', pages:[] }, { name:'营养管理', dir:'employee-app/nutrition', pages:[] }, { name:'运动管理', dir:'employee-app/exercise', pages:[] }, - { name:'健康监测', dir:'employee-app/health-monitor', entry:'index.html', pages:[ + { name:'健康监测', dir:'employee-app/health-monitor', entry:'index.html', prd:'employee-app/health-monitor/doc/PRD.md', done:true, pages:[ { file:'index.html', label:'健康监测主页' }, { file:'wearable/index.html', label:'穿戴监测首页' }, { file:'wearable/steps.html', label:'步数详情' }, { file:'wearable/sleep.html', label:'睡眠详情' }, { file:'wearable/heart-rate.html', label:'心率详情' }, { file:'wearable/heart-rate-alerts.html', label:'心率预警历史' }, - { file:'wearable/temperature.html', label:'体温详情' }, - { file:'wearable/temperature-alerts.html', label:'体温预警历史' }, { file:'wearable/blood-oxygen.html', label:'血氧详情' }, { file:'wearable/blood-oxygen-alerts.html', label:'血氧预警历史' }, + { file:'wearable/blood-pressure.html', label:'血压详情' }, + { file:'wearable/blood-pressure-alerts.html', label:'血压预警历史' }, + { file:'wearable/temperature.html', label:'体温详情' }, + { file:'wearable/temperature-alerts.html', label:'体温预警历史' }, { file:'wearable/stress.html', label:'压力详情' }, { file:'wearable/stress-alerts.html', label:'压力预警历史' }, - { file:'wearable/exercise.html', label:'锻炼详情' }, + { file:'wearable/ecg.html', label:'心电图列表' }, + { file:'wearable/ecg-detail.html', label:'心电图详情' }, + { file:'wearable/exercise.html', label:'锻炼记录' }, { file:'health-screening/index.html', label:'健康排查首页' }, { file:'health-screening/questionnaire-fill.html', label:'每日打卡填写' }, { file:'health-screening/questionnaire-setting.html', label:'题目设置' }, diff --git a/web-admin/health-monitor/archive-algorithm.html b/web-admin/health-monitor/archive-algorithm.html index 04ca99d..d37a434 100644 --- a/web-admin/health-monitor/archive-algorithm.html +++ b/web-admin/health-monitor/archive-algorithm.html @@ -40,9 +40,36 @@ .sidebar-subgroup.open>.sidebar-subgroup__body{display:block;} .sidebar-subgroup__body .sidebar-item{padding-left:36px;font-size:12px;} .main{margin-left:240px;margin-top:56px;padding:24px;min-height:calc(100vh - 56px);} - .page-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100vh - 56px - 48px);color:var(--text-placeholder);gap:12px;} - .page-placeholder svg{opacity:.25;} - .page-placeholder p{font-size:var(--font-base);} + /* 筛选栏 */ + .filter-bar{background:#fff;border-radius:var(--radius-md);padding:20px 24px;margin-bottom:16px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:16px;flex-wrap:wrap;} + .filter-item{display:flex;align-items:center;gap:8px;} + .filter-item label{font-size:var(--font-sm);color:var(--text-secondary);white-space:nowrap;} + .filter-input{height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 12px;font-size:var(--font-sm);color:var(--text-primary);outline:none;background:#fff;min-width:180px;} + .filter-input:focus{border-color:var(--primary);} + /* 按钮 */ + .btn{height:36px;padding:0 16px;border-radius:var(--radius-sm);font-size:var(--font-sm);cursor:pointer;border:none;transition:all .2s;display:inline-flex;align-items:center;gap:6px;} + .btn-primary{background:var(--primary);color:#fff;}.btn-primary:hover{background:#40a9ff;} + .btn-default{background:#fff;color:var(--text-primary);border:1px solid var(--border);}.btn-default:hover{color:var(--primary);border-color:var(--primary);} + .btn-danger-link{background:none;border:none;color:var(--danger);cursor:pointer;font-size:var(--font-sm);padding:0 4px;} + .btn-danger-link:hover{color:#ff7875;} + /* 操作栏 */ + .action-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px;} + /* 表格卡片 */ + .table-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;} + .table-card__content{overflow-x:auto;overflow-y:hidden;} + .table-card__content table{min-width:100%;white-space:nowrap;} + table{width:100%;border-collapse:collapse;} + thead th{background:#FAFAFA;padding:12px 16px;text-align:left;font-size:var(--font-sm);color:var(--text-secondary);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap;} + tbody td{padding:14px 16px;font-size:var(--font-sm);color:var(--text-primary);border-bottom:1px solid var(--border);white-space:nowrap;} + tbody tr:last-child td{border-bottom:none;} + tbody tr:hover{background:#F8FBFF;} + /* 链接 */ + .link{color:var(--primary);cursor:pointer;font-size:var(--font-sm);text-decoration:none;}.link:hover{color:#40a9ff;} + /* 分页 */ + .pagination{display:flex;align-items:center;justify-content:flex-end;padding:16px 24px;gap:8px;border-top:1px solid var(--border);} + .pagination span{font-size:var(--font-sm);color:var(--text-secondary);} + .page-btn{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;cursor:pointer;font-size:var(--font-sm);display:inline-flex;align-items:center;justify-content:center;transition:all .2s;} + .page-btn:hover,.page-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);} @@ -72,9 +99,88 @@ 算法模型
-
- -

算法模型

+ +
+
+ + +
+
+ + +
+ + +
+ + +
+ + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
序号文档名称文档描述制作机构制作人制作年份上传日期 ↕附件操作
1测试PDF测试PDF预览研发研发人员20232026-04-17 13:36:34预览  下载编辑  删除
2预览WORD测试的家里张老师20252026-04-17 13:06:38预览  下载编辑  删除
3心理算法心理算法模型交大王老师20252026-04-15 16:46:54预览  下载编辑  删除
+
+ +
diff --git a/web-admin/health-monitor/archive-personal.html b/web-admin/health-monitor/archive-personal.html index 5b89609..b762294 100644 --- a/web-admin/health-monitor/archive-personal.html +++ b/web-admin/health-monitor/archive-personal.html @@ -68,7 +68,7 @@ body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei .table-card__title{font-size:var(--font-base);font-weight:600;} .table-card__content{overflow-x:auto;-webkit-overflow-scrolling:touch;} table{width:100%;border-collapse:collapse;min-width:100%;white-space:nowrap;} -thead th{background:#FAFAFA;padding:12px 16px;text-align:left;font-size:var(--font-sm);color:var(--text-secondary);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap;} +thead th{background:#FAFAFA;padding:12px 16px;text-align:center;font-size:var(--font-sm);color:var(--text-secondary);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap;} tbody td{padding:14px 16px;font-size:var(--font-sm);color:var(--text-primary);border-bottom:1px solid var(--border);white-space:nowrap;} tbody tr:last-child td{border-bottom:none;} tbody tr:hover{background:#F8FBFF;} @@ -119,46 +119,14 @@ tbody tr:hover{background:#F8FBFF;}
- -
-
-
👤
-
-
1,280
-
监控员工总数
-
-
-
-
-
-
1,156
-
健康排查完成人数
-
-
-
-
-
-
892
-
穿戴监测覆盖人数
-
-
-
-
⚖️
-
-
756
-
体重监测覆盖人数
-
-
-
-
- +
- +
-
- - -
+
+
+ + +
+ +
+ + +
+ + +
+
+ +
+
+
+ 报警记录列表 + 共 12 条 +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
设备名称设备编号设备类型所属单位设备位置监测类型单位阈值异常值报警时间
室内空气监测仪A1IA-2024-001室内设备采油一厂办公楼3F会议室PM2.5μg/m³751282026-05-13 14:20
室外空气监测站A1OA-2024-001室外设备采油一厂厂区东门广场CO2ppm100013502026-05-12 16:45
水质分析仪A1WQ-2024-001水质设备采油一厂生活区供水站浊度NTU1.02.32026-05-11 09:30
+
+ +
+
+ diff --git a/web-admin/health-monitor/archive-unit-health-checkup-detail.html b/web-admin/health-monitor/archive-unit-health-checkup-detail.html index ba3604a..b63deb7 100644 --- a/web-admin/health-monitor/archive-unit-health-checkup-detail.html +++ b/web-admin/health-monitor/archive-unit-health-checkup-detail.html @@ -75,8 +75,8 @@ tbody tr:hover{background:#F8FBFF;} 健康监测