功能修复: 1. 患者创建空名称验证:后端添加 name.trim().is_empty() 检查 2. 仪表盘统计容错:单个查询失败返回零值而非 500 3. FHIR 路由修复:从 /fhir 移到 /api/v1/fhir 保持一致 4. 冻结模块后端中间件:新增 frozen_module_middleware 拦截冻结路径 5. 积分端点权限码:health.health-data.list → health.points.list 6. 角色权限迁移:护士补充 devices.list,运营补充 points.list/manage 7. 测试结果文档:R01-R05 角色测试 + T00/T10 结果归档 Clippy 全 workspace 清零(14→0 errors): - erp-core: 修复 empty doc line、collapsible if、redundant closure 等 9 处 - erp-health: 修复 too_many_arguments、unused var、unnecessary parens 等 58 处 - erp-ai: 修复 dead_code、unused import 等 11 处 - erp-plugin: 修复 too_many_arguments、wildcard pattern 等 11 处 - erp-server-migration: 修复 enum_variant_names 5 处 - erp-auth/config/workflow/message: 各 1-3 处 工程改进: - lint-staged 配置迁移到 .lintstagedrc.js(函数式避免文件列表传给 clippy) - cargo fmt 统一格式化
132 lines
6.9 KiB
Markdown
132 lines
6.9 KiB
Markdown
# R03 — Nurse(护士)业务场景测试计划
|
||
|
||
> 角色: nurse | 测试账号: nurse_test / Admin@2026 | 菜单数: 20 | 重点: 随访执行与体征录入
|
||
|
||
## 1. 登录 & 仪表盘
|
||
|
||
| # | 测试项 | 操作 | 预期结果 | 通过 |
|
||
|---|--------|------|----------|------|
|
||
| 1.1 | 登录 | 输入 nurse_test / Admin@2026 | 成功登录,左侧菜单 20 项 | ☐ |
|
||
| 1.2 | 随访监控台 | 查看首页 | 显示"随访监控台":今日随访数、逾期随访数、体征上报率、待办事项 | ☐ |
|
||
| 1.3 | 待办列表 | 查看待办区域 | Tab 筛选(全部/AI建议/告警/随访/数据异常),显示具体待办项 | ☐ |
|
||
| 1.4 | 快捷操作 | 查看底部入口 | 开始随访、录入体征、查看AI分析、联系患者 | ☐ |
|
||
|
||
## 2. 场景 A — 患者管理
|
||
|
||
> **业务链**: 查看患者列表 → 查看详情 → 新增患者 → 录入体征
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| A.1 | 患者列表 | /health/patients → 搜索 | 显示患者列表,支持搜索 | ☐ |
|
||
| A.2 | 患者详情 | 点击患者卡片 | 显示基本信息、体征数据 | ☐ |
|
||
| A.3 | 新增患者 | 点击新增 → 填写信息 → 保存 | 可新增患者(有 patient.manage 权限) | ☐ |
|
||
| A.4 | 体征查看 | 患者详情 → 体征 Tab | 显示体征趋势图 | ☐ |
|
||
|
||
**交接点**: 护士新增/管理的患者,医生和健康管理师可同步看到。
|
||
|
||
## 3. 场景 B — 随访执行闭环
|
||
|
||
> **业务链**: 接收随访任务(医生创建)→ 执行随访 → 录入结果 → 标记完成
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| B.1 | 随访列表 | /health/follow-up-tasks → 按状态筛选 | 显示待办/进行中/已完成随访 | ☐ |
|
||
| B.2 | 接收任务 | 查看 pending 状态的随访(医生创建的) | 显示随访类型、患者、计划日期 | ☐ |
|
||
| B.3 | 创建随访 | 点击新增 → 选患者/类型/日期 → 保存 | 护士也可自主创建随访任务 | ☐ |
|
||
| B.4 | 执行录入 | 点击某条随访 → 录入 → 填写随访记录 → 保存 | 随访状态 pending → in_progress → completed | ☐ |
|
||
| B.5 | 验证完成 | 回到随访列表 → 筛选已完成 | 已录入的随访出现在已完成列表 | ☐ |
|
||
|
||
**交接点**: 护士完成的随访记录,医生可在详情中查看录入内容。
|
||
|
||
## 4. 场景 C — 咨询查看
|
||
|
||
> **业务链**: 查看咨询列表 → 了解患者沟通情况
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| C.1 | 咨询列表 | /health/consultations → 查看列表 | 可查看咨询列表(只读) | ☐ |
|
||
| C.2 | 无管理权限 | 检查回复/关闭按钮 | 回复和关闭按钮不可见或禁用(无 consultation.manage) | ☐ |
|
||
|
||
## 5. 场景 D — 告警处理
|
||
|
||
> **业务链**: 查看告警 → 确认危急告警
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| D.1 | 告警仪表盘 | /health/alert-dashboard → 查看 | 显示告警统计(只有 alerts.list,无 manage) | ☐ |
|
||
| D.2 | 告警详情 | 查看某条告警 | 可查看告警详情和关联患者 | ☐ |
|
||
| D.3 | 操作按钮 | 检查确认/处理按钮 | 确认按钮是否可用(取决于 alerts.list vs alerts.manage) | ☐ |
|
||
|
||
## 6. 场景 E — 诊断与知情同意
|
||
|
||
> **业务链**: 查看诊断记录 → 管理知情同意书
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| E.1 | 诊断记录 | /health/diagnoses → 查看列表 | 只读查看,无编辑/新增按钮(无 manage 权限) | ☐ |
|
||
| E.2 | 知情同意 | /health/consents → 查看 | 可查看和管理知情同意书 | ☐ |
|
||
|
||
## 7. 场景 F — 行动收件箱
|
||
|
||
> **业务链**: 接收 AI 建议/告警通知 → 处理行动项
|
||
|
||
| # | 步骤 | 操作 | 预期结果 | 通过 |
|
||
|---|------|------|----------|------|
|
||
| F.1 | 行动列表 | /health/action-inbox → 筛选类型 | 显示 AI 建议/告警/随访等行动项 | ☐ |
|
||
| F.2 | 处理行动 | 点击处理按钮 → 标记完成 | 行动项状态变更 | ☐ |
|
||
|
||
## 8. 消息
|
||
|
||
| # | 测试项 | 操作 | 预期结果 | 通过 |
|
||
|---|--------|------|----------|------|
|
||
| 8.1 | 消息列表 | /messages → 查看 | 只读消息列表,可标记已读 | ☐ |
|
||
|
||
## 9. 权限边界验证
|
||
|
||
> nurse 不应访问的模块
|
||
|
||
| # | 测试项 | 操作 | 预期结果 | 通过 |
|
||
|---|--------|------|----------|------|
|
||
| 9.1 | 无医护管理 | 地址栏输入 /health/doctors | 403 或不可见 | ☐ |
|
||
| 9.2 | 无标签管理 | 地址栏输入 /health/tags | 403 或不可见 | ☐ |
|
||
| 9.3 | 无积分管理 | 地址栏输入 /health/points-rules | 403 或不可见 | ☐ |
|
||
| 9.4 | 无内容管理 | 地址栏输入 /health/articles | 403 或不可见 | ☐ |
|
||
| 9.5 | 无 AI 分析 | 地址栏输入 /health/ai-analysis | 403 或不可见 | ☐ |
|
||
| 9.6 | 无随访模板 | 地址栏输入 /health/follow-up-templates | 403 或不可见 | ☐ |
|
||
| 9.7 | 无用户管理 | 地址栏输入 /users | 403 或不可见 | ☐ |
|
||
|
||
## 10. 跨角色协作验证
|
||
|
||
| # | 协作场景 | 操作 | 预期结果 | 通过 |
|
||
|---|----------|------|----------|------|
|
||
| X.1 | 医生随访转护士 | 查看医生创建的随访任务 | 任务出现在待办列表,可执行 | ☐ |
|
||
| X.2 | 录入后医生可查 | 完成随访录入 → 用 doctor 账号验证 | 医生可看到护士录入的随访内容 | ☐ |
|
||
| X.3 | 告警联动 | 患者体征异常 → 告警出现 | 告警出现在行动收件箱 | ☐ |
|
||
| X.4 | 体征录入联动 | 录入异常体征 → 检查告警仪表盘 | 异常体征触发告警规则 | ☐ |
|
||
| X.5 | 随访完成→行动收件箱 | 完成随访 → 检查行动收件箱 | 随访完成事件触发后续行动 | ☐ |
|
||
|
||
## 11. 事件链路验证
|
||
|
||
| # | 事件链路 | 触发操作 | 验证方式 | 通过 |
|
||
|---|----------|----------|----------|------|
|
||
| E.1 | 随访指派接收 | doctor 创建随访并指派 | 护士仪表盘待办数更新,随访列表出现新任务 | ☐ |
|
||
| E.2 | 告警推送 | 体征超阈值触发告警 | 行动收件箱出现新告警行动项 | ☐ |
|
||
| E.3 | 随访完成通知 | 完成随访录入 | 医生端随访详情更新为已完成 | ☐ |
|
||
|
||
## 11. 小程序端(医护工作台)
|
||
|
||
| # | 测试项 | 操作 | 预期结果 | 通过 |
|
||
|---|--------|------|----------|------|
|
||
| 11.1 | 登录跳转 | nurse_test 登录小程序 | 跳转到 `/pages/doctor/index`(isMedicalStaff=true) | ☐ |
|
||
| 11.2 | 问候语 | 查看问候 | 显示角色对应的问候 | ☐ |
|
||
| 11.3 | 工作概览 | 查看 4 个数据卡片 | 我的患者、未读消息、待处理随访、今日咨询 | ☐ |
|
||
| 11.4 | 无健康审核区 | 查看页面 | **不显示**"健康审核"区域 | ☐ |
|
||
| 11.5 | 快捷操作 | 查看 4 个按钮 | 患者查询、随访记录、告警中心、行动收件箱(**没有**: 化验审核、透析管理、处方管理) | ☐ |
|
||
|
||
## 测试结果
|
||
|
||
- 测试人: _________
|
||
- 测试日期: _________
|
||
- 通过数: ___ / 总数: ___
|
||
- 问题记录:
|