1085 lines
44 KiB
Markdown
1085 lines
44 KiB
Markdown
# AI赋能智慧养老系统项目需求分析与概要设计报告
|
||
|
||
| 文档属性 | 内容 |
|
||
| --- | --- |
|
||
| 文档版本 | V3.0 |
|
||
| 文档类型 | 完整需求分析与概要设计报告 |
|
||
| 适用场景 | JavaEE 应用开发实训与智慧养老机构照护管理 |
|
||
| 系统形态 | 后台管理端 + 移动端 App + 家属服务端 |
|
||
| 建设策略 | 一期核心落地,二期业务增强,三期 AI 规则预警 |
|
||
| 编制日期 | 2026-07-01 |
|
||
|
||
## 一、项目概述
|
||
|
||
### 1.1 建设背景
|
||
|
||
随着养老服务数字化程度不断提升,养老机构需要通过信息化系统对老人档案、入住退住、床位房间、健康照护、护理任务、应急事件、设备运维、家属沟通和运营数据进行统一管理。传统线下登记方式存在数据分散、查询低效、过程难追踪、异常响应滞后等问题,难以支撑精细化养老服务管理。
|
||
|
||
AI赋能智慧养老系统是一套面向养老机构照护场景的综合应用系统,包含后台管理端、移动端 App 和家属服务端。系统通过数字化流程优化养老服务管理,通过规则预警实现轻量级 AI 赋能,并以 JavaEE 应用开发为实训载体,训练学生完成需求分析、系统设计、数据库建模、接口设计、编码实现和测试验收的完整工程能力。
|
||
|
||
### 1.2 项目目标
|
||
|
||
- 建立老人全生命周期管理能力,覆盖建档、入住、床位分配、照护、退住等过程。
|
||
- 建立健康照护、护理任务、安全应急、设备运维和家属沟通的一体化业务闭环。
|
||
- 建立基于规则的预警中心,对健康异常、用药逾期、护理任务逾期、设备故障和应急事件进行提醒。
|
||
- 建立运营数据看板,支撑床位占用、护理质量、健康异常、应急处理和服务满意度统计。
|
||
- 以 JavaEE 单体分层架构为基础,保证课程实训可实现、可测试、可验收。
|
||
|
||
### 1.3 系统定位
|
||
|
||
系统定位为“机构照护管理型智慧养老系统”。一期目标是完成机构日常照护管理的核心闭环;二期补充运营服务、家属互动和课程活动能力;三期引入规则预警和风险识别能力,形成具有智能化特征的养老管理系统。
|
||
|
||
### 1.4 设计原则
|
||
|
||
| 原则 | 设计要求 |
|
||
| --- | --- |
|
||
| KISS | 采用 JavaEE 单体分层架构,避免课程项目阶段引入不必要的分布式复杂度。 |
|
||
| YAGNI | 一期只实现核心照护闭环,二期和三期作为明确规划,不混入一期验收。 |
|
||
| DRY | 账号、权限、通知、日志、附件、分页、状态流转和预警规则统一抽象。 |
|
||
| SOLID | 模块按业务职责拆分,Controller、Service、Repository、Entity 边界清晰。 |
|
||
| 可追踪 | 需求、数据实体、接口、类图、流程图和验收标准之间保持对应关系。 |
|
||
|
||
## 二、建设分期与范围边界
|
||
|
||
### 2.1 分期建设范围
|
||
|
||
| 分期 | 建设目标 | 功能范围 | 交付要求 |
|
||
| --- | --- | --- | --- |
|
||
| 一期:核心照护管理 | 建立机构日常照护业务闭环 | 老人档案、入住退住、床位房间、健康记录、护理计划、护理任务、紧急呼叫、设备运维、公告通知、账号权限、数据看板 | 必须可开发、可测试、可验收 |
|
||
| 二期:运营服务增强 | 补齐家属服务、运营和活动服务能力 | 用药计划、用药提醒、探访预约、家属端、服务反馈、费用记录、活动课程、活动评价、实训评价 | 作为增强建设范围,可在一期稳定后迭代 |
|
||
| 三期:AI 规则预警 | 建立轻量智能提醒能力 | 健康异常预警、用药逾期预警、护理任务逾期预警、设备故障预警、应急事件预警、风险老人识别 | 采用规则引擎和统计分析,不引入复杂模型训练 |
|
||
|
||
### 2.2 分期路线图
|
||
|
||
```mermaid
|
||
gantt
|
||
title 智慧养老系统分期建设路线图
|
||
dateFormat YYYY-MM-DD
|
||
axisFormat %m-%d
|
||
section 一期核心照护管理
|
||
老人档案与入住床位 :a1, 2026-07-01, 10d
|
||
健康记录与护理任务 :a2, after a1, 12d
|
||
应急事件与设备运维 :a3, after a2, 10d
|
||
权限通知与数据看板 :a4, after a3, 8d
|
||
section 二期运营服务增强
|
||
家属端与探访预约 :b1, after a4, 10d
|
||
用药提醒与费用记录 :b2, after b1, 10d
|
||
活动课程与服务反馈 :b3, after b2, 8d
|
||
section 三期AI规则预警
|
||
预警规则中心 :c1, after b3, 8d
|
||
风险识别与统计分析 :c2, after c1, 8d
|
||
```
|
||
|
||
### 2.3 范围边界
|
||
|
||
| 范围类型 | 内容 |
|
||
| --- | --- |
|
||
| 一期范围内 | 老人全生命周期、床位房间、健康记录、护理任务、应急事件、设备运维、公告通知、权限日志、基础看板。 |
|
||
| 二期范围内 | 用药计划、家属端、探访预约、费用记录、服务反馈、活动课程、活动评价。 |
|
||
| 三期范围内 | 规则预警、异常提醒、风险老人识别、预警统计。 |
|
||
| 明确范围外 | 医保结算、在线支付、第三方硬件协议适配、复杂 AI 模型训练、多机构 SaaS、多租户计费平台。 |
|
||
|
||
## 三、用户角色与权限模型
|
||
|
||
### 3.1 用户角色
|
||
|
||
| 角色 | 主要职责 | 核心诉求 |
|
||
| --- | --- | --- |
|
||
| 系统管理员 | 维护账号、角色、权限、字典、系统参数 | 权限边界清晰,操作可追踪 |
|
||
| 机构管理人员 | 查看运营看板、审批入住退住、协调资源 | 快速掌握机构运营状态 |
|
||
| 护理主管 | 制定护理计划、分配护理任务、检查任务完成情况 | 护理过程标准化、任务可追踪 |
|
||
| 护理人员 | 执行护理任务、巡检打卡、提交护理记录和异常事件 | 移动端操作简单,任务提醒明确 |
|
||
| 医护人员 | 维护健康记录、用药计划、健康异常处理建议 | 健康数据连续、异常提醒及时 |
|
||
| 维修人员 | 处理设备报修、记录维修结果 | 工单状态清晰,设备位置明确 |
|
||
| 老人 | 查看个人信息、活动通知、服务安排 | 信息易读,操作步骤少 |
|
||
| 家属 | 查看老人动态、健康记录、护理记录、预约探访、提交反馈 | 及时了解老人状态并参与沟通 |
|
||
| 教师/学生 | 基于系统开展 JavaEE 实训、设计和验收 | 业务边界明确,模块可拆分 |
|
||
|
||
### 3.2 角色权限图
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
Admin[系统管理员] --> P1[账号权限]
|
||
Admin --> P2[系统配置]
|
||
Manager[机构管理人员] --> P3[运营看板]
|
||
Manager --> P4[入住退住审批]
|
||
Supervisor[护理主管] --> P5[护理计划]
|
||
Supervisor --> P6[任务派发]
|
||
Nurse[护理人员] --> P7[护理任务执行]
|
||
Nurse --> P8[巡检打卡]
|
||
Doctor[医护人员] --> P9[健康记录]
|
||
Doctor --> P10[用药计划]
|
||
Repair[维修人员] --> P11[维修工单]
|
||
Elder[老人] --> P12[个人信息查看]
|
||
Family[家属] --> P13[家属端查看]
|
||
Family --> P14[探访预约与反馈]
|
||
Teacher[教师/学生] --> P15[实训评价]
|
||
```
|
||
|
||
## 四、需求分析
|
||
|
||
### 4.1 总体需求
|
||
|
||
系统应围绕“老人入住 -> 档案建档 -> 床位分配 -> 健康记录 -> 护理计划 -> 护理任务 -> 异常预警 -> 应急处理 -> 家属通知 -> 数据看板”的主线构建。后台管理端负责业务配置、数据维护、统计分析和审批处理;移动端 App 支持护理人员现场执行、老人查看信息和家属查看动态;规则预警中心负责对异常数据和逾期任务进行提醒。
|
||
|
||
### 4.2 功能需求
|
||
|
||
| 编号 | 分期 | 模块 | 功能点 | 需求描述 | 验收要点 |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| FR-01 | 一期 | 老人全生命周期 | 老人档案管理 | 支持老人基础信息、健康摘要、联系人、入住状态维护。 | 档案可新增、编辑、查询,关键字段校验生效。 |
|
||
| FR-02 | 一期 | 老人全生命周期 | 入住登记 | 支持登记入住时间、护理等级、床位、家属联系人。 | 入住后床位状态变为占用,生成入住记录。 |
|
||
| FR-03 | 一期 | 老人全生命周期 | 退住办理 | 支持退住申请、退住确认、床位释放。 | 退住后老人状态更新,床位恢复可用。 |
|
||
| FR-04 | 一期 | 床位房间管理 | 房间管理 | 支持楼栋、楼层、房间信息维护。 | 房间可按楼层和状态查询。 |
|
||
| FR-05 | 一期 | 床位房间管理 | 床位管理 | 支持床位编号、所属房间、床位状态维护。 | 床位状态可在空闲、占用、维修间流转。 |
|
||
| FR-06 | 一期 | 健康照护 | 健康记录 | 支持体温、血压、心率、血氧等生命体征记录。 | 健康记录可按老人和时间查询。 |
|
||
| FR-07 | 一期 | 健康照护 | 健康档案 | 支持过敏史、慢病信息、健康摘要维护。 | 健康档案与老人档案关联。 |
|
||
| FR-08 | 一期 | 护理服务 | 护理等级 | 支持为老人设置护理等级并关联服务标准。 | 护理等级变更有记录。 |
|
||
| FR-09 | 一期 | 护理服务 | 护理计划 | 支持按护理等级创建护理计划。 | 护理计划可生成护理任务。 |
|
||
| FR-10 | 一期 | 护理服务 | 护理任务 | 支持任务派发、接收、执行、完成和逾期标记。 | 任务状态流转正确,完成记录可追踪。 |
|
||
| FR-11 | 一期 | 护理服务 | 巡检打卡 | 支持护理人员巡检打卡并记录异常说明。 | 巡检记录关联护理人员、老人和时间。 |
|
||
| FR-12 | 一期 | 安全应急 | 紧急呼叫 | 支持老人或护理人员提交紧急呼叫。 | 呼叫生成应急事件并通知相关人员。 |
|
||
| FR-13 | 一期 | 安全应急 | 应急事件处理 | 支持事件接警、派发、处理、完成、归档。 | 应急事件状态可追踪,处理结果可查看。 |
|
||
| FR-14 | 一期 | 设备运维 | 设备台账 | 支持设备编号、类型、位置、状态、责任人维护。 | 设备编号唯一,状态变化有记录。 |
|
||
| FR-15 | 一期 | 设备运维 | 设备报修 | 支持故障上报、派单、维修记录和完成确认。 | 工单完成后设备状态可恢复正常。 |
|
||
| FR-16 | 一期 | 公告通知 | 公告发布 | 支持按角色和范围发布公告。 | 草稿不可见,发布后目标用户可见。 |
|
||
| FR-17 | 一期 | 公告通知 | 消息阅读状态 | 支持未读、已读状态维护。 | 用户阅读后状态更新。 |
|
||
| FR-18 | 一期 | 账号权限 | 账号角色管理 | 支持账号启停、角色分配、权限控制。 | 停用账号不可登录,角色菜单隔离。 |
|
||
| FR-19 | 一期 | 数据可视化 | 基础运营看板 | 展示老人数量、床位占用、护理任务、应急事件、设备状态。 | 看板数据与业务记录一致。 |
|
||
| FR-20 | 二期 | 用药管理 | 用药计划 | 支持维护药品名称、剂量、频次、用药时间。 | 用药计划与老人档案关联。 |
|
||
| FR-21 | 二期 | 用药管理 | 用药提醒 | 支持按计划生成提醒并记录服药状态。 | 逾期未确认可生成提醒记录。 |
|
||
| FR-22 | 二期 | 家属服务 | 家属端信息查看 | 家属可查看授权范围内的老人档案摘要、健康记录、护理记录。 | 家属只能查看绑定老人数据。 |
|
||
| FR-23 | 二期 | 家属服务 | 探访预约 | 支持家属提交探访预约,工作人员审核。 | 预约状态可追踪。 |
|
||
| FR-24 | 二期 | 家属服务 | 服务反馈 | 支持家属提交服务评价和反馈。 | 反馈可处理、回复和归档。 |
|
||
| FR-25 | 二期 | 运营管理 | 费用记录 | 支持记录护理费、床位费、服务费等费用信息。 | 费用记录可按老人和周期查询。 |
|
||
| FR-26 | 二期 | 活动课程 | 活动课程发布 | 支持活动课程创建、发布、报名和容量控制。 | 发布后授权用户可查看并报名。 |
|
||
| FR-27 | 二期 | 活动课程 | 活动签到评价 | 支持签到、活动评价、参与统计。 | 签到和评价数据可统计。 |
|
||
| FR-28 | 三期 | 规则预警 | 预警规则配置 | 支持健康阈值、任务逾期、设备故障等规则配置。 | 启用规则后可参与预警判断。 |
|
||
| FR-29 | 三期 | 规则预警 | 预警记录 | 支持生成、确认、处理、关闭预警记录。 | 预警状态完整可追踪。 |
|
||
| FR-30 | 三期 | 智能分析 | 风险老人识别 | 根据健康异常、应急事件、护理频次识别高风险老人。 | 风险列表可按规则结果生成。 |
|
||
|
||
### 4.3 非功能需求
|
||
|
||
| 编号 | 类别 | 需求说明 |
|
||
| --- | --- | --- |
|
||
| NFR-01 | 性能 | 常规列表查询 3 秒内返回;高频列表必须分页;看板统计应避免全表实时扫描。 |
|
||
| NFR-02 | 安全 | 所有业务接口必须认证授权;老人健康、费用和家属数据仅授权角色可见。 |
|
||
| NFR-03 | 可靠性 | 关键状态流转必须具备幂等或重复提交保护,避免任务、工单、预警重复处理。 |
|
||
| NFR-04 | 可用性 | 后台菜单按业务域组织;移动端优先展示待办任务、提醒和老人关键信息。 |
|
||
| NFR-05 | 可维护性 | 按业务域拆分 Service,状态枚举和规则判断集中管理,避免散落在控制层。 |
|
||
| NFR-06 | 可审计 | 登录、档案修改、入住退住、护理任务、应急事件、费用变更必须记录操作日志。 |
|
||
| NFR-07 | 数据备份 | 核心业务数据应支持定期备份和恢复验证。 |
|
||
| NFR-08 | 可扩展 | 二期和三期功能通过新增模块扩展,不破坏一期核心数据结构。 |
|
||
|
||
## 五、系统建模
|
||
|
||
### 5.1 系统上下文图
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
Admin[系统管理员] --> Web[后台管理端]
|
||
Manager[机构管理人员] --> Web
|
||
Supervisor[护理主管] --> Web
|
||
Doctor[医护人员] --> Web
|
||
Repair[维修人员] --> Web
|
||
Nurse[护理人员] --> App[移动端 App]
|
||
Elder[老人] --> App
|
||
Family[家属] --> FamilyPortal[家属服务端]
|
||
Teacher[教师/学生] --> Web
|
||
|
||
Web --> Server[JavaEE 应用服务]
|
||
App --> Server
|
||
FamilyPortal --> Server
|
||
Server --> DB[(关系型数据库)]
|
||
Server --> FileStore[(附件与导出文件)]
|
||
Server --> Alert[规则预警中心]
|
||
Alert --> Notify[消息通知]
|
||
```
|
||
|
||
### 5.2 用例图
|
||
|
||
```mermaid
|
||
flowchart TB
|
||
Admin[系统管理员]
|
||
Manager[机构管理人员]
|
||
Supervisor[护理主管]
|
||
Nurse[护理人员]
|
||
Doctor[医护人员]
|
||
Repair[维修人员]
|
||
Elder[老人]
|
||
Family[家属]
|
||
Teacher[教师/学生]
|
||
|
||
UC01[账号权限管理]
|
||
UC02[老人档案管理]
|
||
UC03[入住退住管理]
|
||
UC04[床位房间管理]
|
||
UC05[健康记录管理]
|
||
UC06[用药计划管理]
|
||
UC07[护理计划管理]
|
||
UC08[护理任务执行]
|
||
UC09[巡检打卡]
|
||
UC10[紧急呼叫处理]
|
||
UC11[设备台账维护]
|
||
UC12[维修工单处理]
|
||
UC13[公告通知管理]
|
||
UC14[家属信息查看]
|
||
UC15[探访预约]
|
||
UC16[服务反馈]
|
||
UC17[费用记录]
|
||
UC18[活动课程管理]
|
||
UC19[规则预警处理]
|
||
UC20[运营数据看板]
|
||
|
||
Admin --> UC01
|
||
Manager --> UC03
|
||
Manager --> UC04
|
||
Manager --> UC17
|
||
Manager --> UC20
|
||
Supervisor --> UC07
|
||
Supervisor --> UC19
|
||
Nurse --> UC08
|
||
Nurse --> UC09
|
||
Nurse --> UC10
|
||
Doctor --> UC05
|
||
Doctor --> UC06
|
||
Repair --> UC11
|
||
Repair --> UC12
|
||
Elder --> UC10
|
||
Elder --> UC18
|
||
Family --> UC14
|
||
Family --> UC15
|
||
Family --> UC16
|
||
Teacher --> UC18
|
||
Teacher --> UC20
|
||
```
|
||
|
||
### 5.3 业务领域划分图
|
||
|
||
```mermaid
|
||
mindmap
|
||
root((智慧养老系统))
|
||
核心照护
|
||
老人档案
|
||
入住退住
|
||
床位房间
|
||
健康记录
|
||
护理任务
|
||
应急事件
|
||
运营服务
|
||
家属端
|
||
探访预约
|
||
费用记录
|
||
服务反馈
|
||
活动课程
|
||
支撑能力
|
||
账号权限
|
||
公告通知
|
||
操作日志
|
||
数据看板
|
||
智能能力
|
||
规则配置
|
||
异常预警
|
||
风险识别
|
||
预警统计
|
||
```
|
||
|
||
### 5.4 总体业务流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Start([开始]) --> Register[老人档案建档]
|
||
Register --> CheckIn[入住登记]
|
||
CheckIn --> AssignBed[床位分配]
|
||
AssignBed --> Health[健康档案与健康记录]
|
||
Health --> CarePlan[制定护理计划]
|
||
CarePlan --> CareTask[生成护理任务]
|
||
CareTask --> Execute[护理执行与巡检打卡]
|
||
Execute --> Abnormal{是否异常}
|
||
Abnormal -- 否 --> Record[归档服务记录]
|
||
Abnormal -- 是 --> Alert[生成预警或应急事件]
|
||
Alert --> Handle[处理并通知相关人员]
|
||
Record --> Dashboard[更新数据看板]
|
||
Handle --> Dashboard
|
||
Dashboard --> End([结束])
|
||
```
|
||
|
||
## 六、概要架构设计
|
||
|
||
### 6.1 总体架构图
|
||
|
||
```mermaid
|
||
flowchart TB
|
||
subgraph Client[客户端层]
|
||
WebUI[后台管理端 Web]
|
||
Mobile[移动端 App]
|
||
FamilyUI[家属服务端]
|
||
end
|
||
|
||
subgraph Application[JavaEE 应用服务]
|
||
Controller[Controller 表现层]
|
||
Auth[认证授权与审计]
|
||
Service[Service 业务服务层]
|
||
Rule[规则预警组件]
|
||
Repository[Repository 数据访问层]
|
||
Common[通用组件]
|
||
end
|
||
|
||
subgraph Storage[数据存储层]
|
||
DB[(关系型数据库)]
|
||
Files[(附件与导出文件)]
|
||
end
|
||
|
||
WebUI --> Controller
|
||
Mobile --> Controller
|
||
FamilyUI --> Controller
|
||
Controller --> Auth
|
||
Controller --> Service
|
||
Service --> Rule
|
||
Service --> Repository
|
||
Service --> Common
|
||
Rule --> Repository
|
||
Repository --> DB
|
||
Common --> Files
|
||
```
|
||
|
||
### 6.2 功能模块图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
System[AI赋能智慧养老系统]
|
||
System --> M1[老人全生命周期]
|
||
System --> M2[床位房间管理]
|
||
System --> M3[健康照护管理]
|
||
System --> M4[护理服务管理]
|
||
System --> M5[安全应急管理]
|
||
System --> M6[设备运维管理]
|
||
System --> M7[家属服务管理]
|
||
System --> M8[运营服务管理]
|
||
System --> M9[公告通知管理]
|
||
System --> M10[规则预警中心]
|
||
System --> M11[数据可视化]
|
||
System --> M12[账号权限与日志]
|
||
|
||
M1 --> M101[档案]
|
||
M1 --> M102[入住]
|
||
M1 --> M103[退住]
|
||
M2 --> M201[房间]
|
||
M2 --> M202[床位]
|
||
M3 --> M301[健康记录]
|
||
M3 --> M302[用药计划]
|
||
M4 --> M401[护理计划]
|
||
M4 --> M402[护理任务]
|
||
M5 --> M501[紧急呼叫]
|
||
M5 --> M502[应急事件]
|
||
M7 --> M701[探访预约]
|
||
M7 --> M702[服务反馈]
|
||
M10 --> M1001[规则配置]
|
||
M10 --> M1002[预警记录]
|
||
```
|
||
|
||
### 6.3 模块职责表
|
||
|
||
| 模块 | 主要职责 | 分期 |
|
||
| --- | --- | --- |
|
||
| 老人全生命周期 | 档案、入住、退住、联系人、状态管理 | 一期 |
|
||
| 床位房间管理 | 楼栋、楼层、房间、床位状态和占用关系 | 一期 |
|
||
| 健康照护管理 | 健康档案、生命体征、用药计划和提醒 | 一期/二期 |
|
||
| 护理服务管理 | 护理等级、护理计划、任务派发、执行、巡检 | 一期 |
|
||
| 安全应急管理 | 紧急呼叫、应急事件、处理闭环、家属通知 | 一期 |
|
||
| 设备运维管理 | 设备台账、故障报修、维修派单和归档 | 一期 |
|
||
| 家属服务管理 | 家属端查看、探访预约、服务反馈 | 二期 |
|
||
| 运营服务管理 | 费用记录、活动课程、评价统计 | 二期 |
|
||
| 规则预警中心 | 规则配置、预警生成、确认、处理、关闭 | 三期 |
|
||
| 数据可视化 | 床位、护理、健康、应急、设备、费用、活动指标 | 一期/二期/三期 |
|
||
| 账号权限与日志 | 账号、角色、权限、审计日志 | 一期 |
|
||
|
||
## 七、数据库设计
|
||
|
||
### 7.1 核心数据对象
|
||
|
||
| 数据对象 | 分期 | 关键字段 | 主要关系 |
|
||
| --- | --- | --- | --- |
|
||
| UserAccount | 一期 | user_id, username, password_hash, role_id, status | 关联角色、日志、通知阅读 |
|
||
| Role | 一期 | role_id, role_name, permission_codes | 关联用户账号 |
|
||
| Elder | 一期 | elder_id, name, gender, age, status, health_summary | 关联入住、床位、健康、护理、应急 |
|
||
| FamilyMember | 二期 | family_id, elder_id, name, phone, relation | 关联老人和家属端账号 |
|
||
| Room | 一期 | room_id, building, floor, room_no, status | 关联床位 |
|
||
| Bed | 一期 | bed_id, room_id, bed_no, status | 关联入住记录 |
|
||
| CheckInRecord | 一期 | checkin_id, elder_id, bed_id, checkin_at, checkout_at, status | 关联老人和床位 |
|
||
| HealthRecord | 一期 | record_id, elder_id, temperature, blood_pressure, heart_rate, spo2, recorded_at | 关联老人和预警 |
|
||
| MedicationPlan | 二期 | plan_id, elder_id, medicine_name, dosage, frequency, start_date, status | 关联用药提醒 |
|
||
| MedicationReminder | 二期 | reminder_id, plan_id, remind_time, confirm_status | 关联用药计划 |
|
||
| CareLevel | 一期 | level_id, level_name, service_standard | 关联老人和护理计划 |
|
||
| CarePlan | 一期 | plan_id, elder_id, level_id, content, status | 生成护理任务 |
|
||
| CareTask | 一期 | task_id, plan_id, assignee_id, due_time, status | 关联护理人员和巡检记录 |
|
||
| PatrolRecord | 一期 | patrol_id, task_id, elder_id, staff_id, result, checked_at | 关联护理任务 |
|
||
| EmergencyEvent | 一期 | event_id, elder_id, caller_id, status, level, result | 关联通知和预警 |
|
||
| Device | 一期 | device_id, code, type, location, status, owner_id | 关联维修工单 |
|
||
| RepairTicket | 一期 | ticket_id, device_id, reporter_id, assignee_id, status, result | 关联设备和员工 |
|
||
| Notice | 一期 | notice_id, title, content, target_scope, publish_status | 关联阅读记录 |
|
||
| NoticeRead | 一期 | read_id, notice_id, user_id, read_status, read_at | 关联通知和用户 |
|
||
| VisitAppointment | 二期 | appointment_id, elder_id, family_id, visit_time, status | 关联家属和老人 |
|
||
| Feedback | 二期 | feedback_id, elder_id, family_id, content, status, reply | 关联家属和处理人 |
|
||
| FeeRecord | 二期 | fee_id, elder_id, fee_type, amount, period, status | 关联老人 |
|
||
| CourseActivity | 二期 | course_id, title, time, location, capacity, status | 关联报名签到 |
|
||
| Enrollment | 二期 | enrollment_id, course_id, elder_id, sign_status | 关联课程和老人 |
|
||
| ScoreEvaluation | 二期 | score_id, course_id, elder_id, score, comment | 关联课程和评价 |
|
||
| AlertRule | 三期 | rule_id, rule_type, condition_expr, level, enabled | 生成预警 |
|
||
| AlertRecord | 三期 | alert_id, rule_id, elder_id, source_type, status, message | 关联老人和业务来源 |
|
||
| AuditLog | 一期 | log_id, user_id, action, target_type, target_id, created_at | 记录关键操作 |
|
||
|
||
### 7.2 ER 图
|
||
|
||
```mermaid
|
||
erDiagram
|
||
ROLE ||--o{ USER_ACCOUNT : grants
|
||
USER_ACCOUNT ||--o{ AUDIT_LOG : writes
|
||
ELDER ||--o{ FAMILY_MEMBER : has
|
||
FAMILY_MEMBER ||--o| USER_ACCOUNT : binds
|
||
ELDER ||--o{ CHECKIN_RECORD : has
|
||
ROOM ||--o{ BED : contains
|
||
BED ||--o{ CHECKIN_RECORD : assigned
|
||
ELDER ||--o{ HEALTH_RECORD : owns
|
||
ELDER ||--o{ MEDICATION_PLAN : owns
|
||
MEDICATION_PLAN ||--o{ MEDICATION_REMINDER : generates
|
||
CARE_LEVEL ||--o{ CARE_PLAN : defines
|
||
ELDER ||--o{ CARE_PLAN : owns
|
||
CARE_PLAN ||--o{ CARE_TASK : generates
|
||
STAFF ||--o{ CARE_TASK : executes
|
||
CARE_TASK ||--o{ PATROL_RECORD : records
|
||
ELDER ||--o{ EMERGENCY_EVENT : triggers
|
||
DEVICE ||--o{ REPAIR_TICKET : has
|
||
STAFF ||--o{ REPAIR_TICKET : handles
|
||
NOTICE ||--o{ NOTICE_READ : tracks
|
||
USER_ACCOUNT ||--o{ NOTICE_READ : reads
|
||
ELDER ||--o{ VISIT_APPOINTMENT : receives
|
||
FAMILY_MEMBER ||--o{ VISIT_APPOINTMENT : books
|
||
FAMILY_MEMBER ||--o{ FEEDBACK : submits
|
||
ELDER ||--o{ FEE_RECORD : has
|
||
COURSE_ACTIVITY ||--o{ ENROLLMENT : includes
|
||
ELDER ||--o{ ENROLLMENT : joins
|
||
COURSE_ACTIVITY ||--o{ SCORE_EVALUATION : evaluates
|
||
ALERT_RULE ||--o{ ALERT_RECORD : creates
|
||
ELDER ||--o{ ALERT_RECORD : receives
|
||
|
||
ELDER {
|
||
bigint elder_id PK
|
||
string name
|
||
string gender
|
||
int age
|
||
string status
|
||
string health_summary
|
||
}
|
||
ROOM {
|
||
bigint room_id PK
|
||
string building
|
||
string floor
|
||
string room_no
|
||
string status
|
||
}
|
||
BED {
|
||
bigint bed_id PK
|
||
bigint room_id FK
|
||
string bed_no
|
||
string status
|
||
}
|
||
CHECKIN_RECORD {
|
||
bigint checkin_id PK
|
||
bigint elder_id FK
|
||
bigint bed_id FK
|
||
datetime checkin_at
|
||
datetime checkout_at
|
||
string status
|
||
}
|
||
HEALTH_RECORD {
|
||
bigint record_id PK
|
||
bigint elder_id FK
|
||
decimal temperature
|
||
string blood_pressure
|
||
int heart_rate
|
||
int spo2
|
||
datetime recorded_at
|
||
}
|
||
CARE_TASK {
|
||
bigint task_id PK
|
||
bigint plan_id FK
|
||
bigint assignee_id FK
|
||
datetime due_time
|
||
string status
|
||
}
|
||
EMERGENCY_EVENT {
|
||
bigint event_id PK
|
||
bigint elder_id FK
|
||
bigint caller_id FK
|
||
string level
|
||
string status
|
||
string result
|
||
}
|
||
ALERT_RECORD {
|
||
bigint alert_id PK
|
||
bigint rule_id FK
|
||
bigint elder_id FK
|
||
string source_type
|
||
string level
|
||
string status
|
||
string message
|
||
}
|
||
```
|
||
|
||
## 八、核心类设计
|
||
|
||
### 8.1 核心领域类图
|
||
|
||
```mermaid
|
||
classDiagram
|
||
class Elder {
|
||
+Long elderId
|
||
+String name
|
||
+String status
|
||
+String healthSummary
|
||
+checkIn(bed)
|
||
+checkOut()
|
||
}
|
||
class Room {
|
||
+Long roomId
|
||
+String roomNo
|
||
+String status
|
||
}
|
||
class Bed {
|
||
+Long bedId
|
||
+String bedNo
|
||
+String status
|
||
+occupy()
|
||
+release()
|
||
+repair()
|
||
}
|
||
class CheckInRecord {
|
||
+Long checkinId
|
||
+Date checkinAt
|
||
+Date checkoutAt
|
||
+String status
|
||
}
|
||
class HealthRecord {
|
||
+Long recordId
|
||
+BigDecimal temperature
|
||
+String bloodPressure
|
||
+Integer heartRate
|
||
+Integer spo2
|
||
+isAbnormal()
|
||
}
|
||
class MedicationPlan {
|
||
+Long planId
|
||
+String medicineName
|
||
+String dosage
|
||
+String frequency
|
||
+generateReminders()
|
||
}
|
||
class CarePlan {
|
||
+Long planId
|
||
+String content
|
||
+String status
|
||
+generateTasks()
|
||
}
|
||
class CareTask {
|
||
+Long taskId
|
||
+Date dueTime
|
||
+String status
|
||
+accept()
|
||
+finish()
|
||
+markOverdue()
|
||
}
|
||
class EmergencyEvent {
|
||
+Long eventId
|
||
+String level
|
||
+String status
|
||
+dispatch()
|
||
+finish()
|
||
}
|
||
class AlertRule {
|
||
+Long ruleId
|
||
+String ruleType
|
||
+String conditionExpr
|
||
+Boolean enabled
|
||
+match(source)
|
||
}
|
||
class AlertRecord {
|
||
+Long alertId
|
||
+String level
|
||
+String status
|
||
+confirm()
|
||
+close()
|
||
}
|
||
|
||
Room "1" --> "0..*" Bed
|
||
Elder "1" --> "0..*" CheckInRecord
|
||
Bed "1" --> "0..*" CheckInRecord
|
||
Elder "1" --> "0..*" HealthRecord
|
||
Elder "1" --> "0..*" MedicationPlan
|
||
Elder "1" --> "0..*" CarePlan
|
||
CarePlan "1" --> "0..*" CareTask
|
||
Elder "1" --> "0..*" EmergencyEvent
|
||
AlertRule "1" --> "0..*" AlertRecord
|
||
Elder "1" --> "0..*" AlertRecord
|
||
```
|
||
|
||
### 8.2 服务层类图
|
||
|
||
```mermaid
|
||
classDiagram
|
||
class AuthService {
|
||
+login(username, password)
|
||
+checkPermission(userId, permission)
|
||
}
|
||
class ElderService {
|
||
+createElder(cmd)
|
||
+updateElder(cmd)
|
||
+checkIn(cmd)
|
||
+checkOut(elderId)
|
||
}
|
||
class BedService {
|
||
+assignBed(elderId, bedId)
|
||
+releaseBed(bedId)
|
||
+changeStatus(bedId, status)
|
||
}
|
||
class HealthService {
|
||
+recordHealth(cmd)
|
||
+queryTrend(elderId)
|
||
}
|
||
class CareService {
|
||
+createPlan(cmd)
|
||
+dispatchTask(cmd)
|
||
+finishTask(taskId)
|
||
}
|
||
class EmergencyService {
|
||
+createEvent(cmd)
|
||
+dispatch(eventId)
|
||
+finish(eventId)
|
||
}
|
||
class AlertService {
|
||
+evaluate(source)
|
||
+createAlert(rule, source)
|
||
+close(alertId)
|
||
}
|
||
class DashboardService {
|
||
+overview()
|
||
+careStats()
|
||
+riskStats()
|
||
}
|
||
|
||
ElderService --> BedService
|
||
HealthService --> AlertService
|
||
CareService --> AlertService
|
||
EmergencyService --> AlertService
|
||
DashboardService --> ElderService
|
||
DashboardService --> CareService
|
||
DashboardService --> EmergencyService
|
||
```
|
||
|
||
## 九、接口设计
|
||
|
||
### 9.1 核心接口族
|
||
|
||
| 接口族 | 方法与路径示例 | 主要用途 | 分期 | 权限要求 |
|
||
| --- | --- | --- | --- | --- |
|
||
| 认证接口 | POST /api/auth/login | 登录并获取会话信息 | 一期 | 所有用户 |
|
||
| 老人档案接口 | GET/POST/PUT /api/elders | 老人档案维护 | 一期 | 管理员、工作人员 |
|
||
| 入住退住接口 | POST /api/check-ins, PUT /api/check-ins/{id}/checkout | 入住登记与退住办理 | 一期 | 管理员、工作人员 |
|
||
| 房间接口 | GET/POST/PUT /api/rooms | 房间维护 | 一期 | 管理员、工作人员 |
|
||
| 床位接口 | GET/POST/PUT /api/beds | 床位维护和状态调整 | 一期 | 管理员、工作人员 |
|
||
| 健康记录接口 | GET/POST /api/health-records | 生命体征记录和查询 | 一期 | 医护人员、护理人员 |
|
||
| 护理等级接口 | GET/POST /api/care-levels | 护理等级维护 | 一期 | 护理主管 |
|
||
| 护理计划接口 | GET/POST/PUT /api/care-plans | 护理计划维护 | 一期 | 护理主管 |
|
||
| 护理任务接口 | GET/POST/PUT /api/care-tasks | 护理任务派发与执行 | 一期 | 护理主管、护理人员 |
|
||
| 巡检接口 | POST /api/patrol-records | 巡检打卡记录 | 一期 | 护理人员 |
|
||
| 应急事件接口 | GET/POST/PUT /api/emergency-events | 紧急呼叫和应急事件处理 | 一期 | 护理人员、管理人员 |
|
||
| 设备接口 | GET/POST/PUT /api/devices | 设备台账维护 | 一期 | 管理员、维修人员 |
|
||
| 工单接口 | GET/POST/PUT /api/repair-tickets | 设备报修处理 | 一期 | 护理人员、维修人员 |
|
||
| 公告接口 | GET/POST/PUT /api/notices | 公告发布和阅读状态维护 | 一期 | 工作人员、老人、家属 |
|
||
| 看板接口 | GET /api/dashboard/overview | 查询运营统计指标 | 一期 | 管理人员、教师 |
|
||
| 用药计划接口 | GET/POST/PUT /api/medication-plans | 用药计划维护 | 二期 | 医护人员 |
|
||
| 用药提醒接口 | GET/PUT /api/medication-reminders | 用药提醒和确认 | 二期 | 护理人员、家属 |
|
||
| 家属端接口 | GET /api/family/elders/{id}/summary | 家属查看老人摘要 | 二期 | 家属 |
|
||
| 探访预约接口 | GET/POST/PUT /api/visit-appointments | 探访预约与审核 | 二期 | 家属、工作人员 |
|
||
| 服务反馈接口 | GET/POST/PUT /api/feedback | 服务评价、回复和归档 | 二期 | 家属、工作人员 |
|
||
| 费用接口 | GET/POST /api/fee-records | 费用记录和查询 | 二期 | 管理人员、家属 |
|
||
| 活动课程接口 | GET/POST/PUT /api/courses | 活动课程发布和维护 | 二期 | 工作人员、教师 |
|
||
| 规则接口 | GET/POST/PUT /api/alert-rules | 预警规则配置 | 三期 | 管理员、护理主管 |
|
||
| 预警接口 | GET/PUT /api/alerts | 预警确认、处理和关闭 | 三期 | 管理人员、护理人员 |
|
||
|
||
## 十、关键业务流程设计
|
||
|
||
### 10.1 老人入住流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Start([开始]) --> Create[创建老人档案]
|
||
Create --> Check[校验身份证明和联系人]
|
||
Check --> ChooseBed[选择房间床位]
|
||
ChooseBed --> Available{床位是否可用}
|
||
Available -- 否 --> Rechoose[重新选择床位]
|
||
Rechoose --> ChooseBed
|
||
Available -- 是 --> SetCare[设置护理等级]
|
||
SetCare --> Save[生成入住记录]
|
||
Save --> Occupy[床位状态改为占用]
|
||
Occupy --> Plan[生成初始护理计划]
|
||
Plan --> End([完成入住])
|
||
```
|
||
|
||
### 10.2 护理任务流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Start([护理计划生效]) --> Generate[生成护理任务]
|
||
Generate --> Dispatch[派发给护理人员]
|
||
Dispatch --> Accept[护理人员接收]
|
||
Accept --> Execute[执行护理]
|
||
Execute --> Check{是否发现异常}
|
||
Check -- 否 --> Finish[提交完成记录]
|
||
Check -- 是 --> Abnormal[提交异常说明]
|
||
Abnormal --> Alert[触发预警或应急事件]
|
||
Finish --> Archive[归档护理记录]
|
||
Alert --> Archive
|
||
```
|
||
|
||
### 10.3 健康异常预警流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Start([录入健康记录]) --> LoadRule[加载健康阈值规则]
|
||
LoadRule --> Match{是否命中异常规则}
|
||
Match -- 否 --> Save[保存健康记录]
|
||
Match -- 是 --> CreateAlert[生成健康预警]
|
||
CreateAlert --> Notify[通知医护或护理主管]
|
||
Notify --> Confirm[确认预警]
|
||
Confirm --> Handle[处理并填写结果]
|
||
Handle --> Close[关闭预警]
|
||
Save --> End([结束])
|
||
Close --> End
|
||
```
|
||
|
||
### 10.4 紧急呼叫处理流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Call([紧急呼叫]) --> Event[生成应急事件]
|
||
Event --> Notify[通知护理人员和管理人员]
|
||
Notify --> Dispatch[分派处理人]
|
||
Dispatch --> Arrive[到场处理]
|
||
Arrive --> NeedFamily{是否通知家属}
|
||
NeedFamily -- 是 --> Family[推送家属通知]
|
||
NeedFamily -- 否 --> Record[记录处理过程]
|
||
Family --> Record
|
||
Record --> Finish[完成事件]
|
||
Finish --> Archive[事件归档]
|
||
```
|
||
|
||
### 10.5 设备报修流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Fault[发现设备故障] --> Ticket[提交维修工单]
|
||
Ticket --> Mark[设备状态改为故障]
|
||
Mark --> Assign[分配维修人员]
|
||
Assign --> Repair[维修处理]
|
||
Repair --> Result{是否修复}
|
||
Result -- 是 --> Normal[设备恢复正常]
|
||
Result -- 否 --> Pending[继续维修或停用]
|
||
Normal --> Archive[工单归档]
|
||
Pending --> Archive
|
||
```
|
||
|
||
### 10.6 家属探访预约流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Start([家属提交预约]) --> CheckTime[校验探访时间]
|
||
CheckTime --> Review[工作人员审核]
|
||
Review --> Pass{是否通过}
|
||
Pass -- 否 --> Reject[驳回并说明原因]
|
||
Pass -- 是 --> Confirm[生成预约记录]
|
||
Confirm --> Notify[通知家属和护理人员]
|
||
Notify --> Visit[到访签到]
|
||
Visit --> Finish[预约完成]
|
||
```
|
||
|
||
## 十一、状态设计
|
||
|
||
### 11.1 床位状态图
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
[*] --> Available: 新增床位
|
||
Available --> Occupied: 入住分配
|
||
Occupied --> Available: 退住释放
|
||
Available --> Maintenance: 进入维修
|
||
Occupied --> Maintenance: 故障停用
|
||
Maintenance --> Available: 维修完成
|
||
```
|
||
|
||
### 11.2 护理任务状态图
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
[*] --> Pending: 生成任务
|
||
Pending --> Assigned: 派发
|
||
Assigned --> Accepted: 接收
|
||
Accepted --> Processing: 执行
|
||
Processing --> Completed: 完成
|
||
Assigned --> Overdue: 超时未处理
|
||
Accepted --> Overdue: 超时未完成
|
||
Overdue --> Completed: 补充完成
|
||
Completed --> [*]
|
||
```
|
||
|
||
### 11.3 应急事件状态图
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
[*] --> Submitted: 呼叫或上报
|
||
Submitted --> Dispatched: 分派处理
|
||
Dispatched --> Processing: 到场处理
|
||
Processing --> Finished: 处理完成
|
||
Finished --> Archived: 归档
|
||
Submitted --> Cancelled: 误报关闭
|
||
Archived --> [*]
|
||
Cancelled --> [*]
|
||
```
|
||
|
||
### 11.4 预警状态图
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
[*] --> Generated: 规则命中
|
||
Generated --> Confirmed: 人工确认
|
||
Confirmed --> Processing: 处理中
|
||
Processing --> Closed: 处理完成
|
||
Generated --> Ignored: 判定无需处理
|
||
Closed --> [*]
|
||
Ignored --> [*]
|
||
```
|
||
|
||
## 十二、关键时序设计
|
||
|
||
### 12.1 登录鉴权时序图
|
||
|
||
```mermaid
|
||
sequenceDiagram
|
||
participant U as 用户
|
||
participant C as 客户端
|
||
participant A as AuthController
|
||
participant S as AuthService
|
||
participant R as UserRepository
|
||
participant L as AuditLogService
|
||
|
||
U->>C: 输入账号密码
|
||
C->>A: POST /api/auth/login
|
||
A->>S: login(username, password)
|
||
S->>R: findByUsername(username)
|
||
R-->>S: 用户账号与角色
|
||
S->>S: 校验密码、状态和权限
|
||
S->>L: 记录登录日志
|
||
S-->>A: 返回会话与权限
|
||
A-->>C: 登录成功
|
||
```
|
||
|
||
### 12.2 护理任务执行时序图
|
||
|
||
```mermaid
|
||
sequenceDiagram
|
||
participant Supervisor as 护理主管
|
||
participant API as CareTaskController
|
||
participant S as CareService
|
||
participant N as 护理人员
|
||
participant A as AlertService
|
||
participant DB as Repository
|
||
|
||
Supervisor->>API: 创建并派发护理任务
|
||
API->>S: dispatchTask(cmd)
|
||
S->>DB: 保存任务状态为Assigned
|
||
N->>API: 接收任务
|
||
API->>S: accept(taskId)
|
||
S->>DB: 更新状态为Accepted
|
||
N->>API: 提交完成记录
|
||
API->>S: finishTask(taskId, result)
|
||
S->>A: evaluate(taskResult)
|
||
A-->>S: 返回预警判断结果
|
||
S->>DB: 保存护理记录和任务状态
|
||
```
|
||
|
||
### 12.3 用药提醒预警时序图
|
||
|
||
```mermaid
|
||
sequenceDiagram
|
||
participant Timer as 定时任务
|
||
participant M as MedicationService
|
||
participant A as AlertService
|
||
participant N as NoticeService
|
||
participant DB as Repository
|
||
|
||
Timer->>M: 扫描到期用药提醒
|
||
M->>DB: 查询未确认提醒
|
||
DB-->>M: 返回逾期提醒
|
||
M->>A: evaluate(medicationReminder)
|
||
A->>DB: 生成用药逾期预警
|
||
A->>N: 推送提醒给护理人员或家属
|
||
N->>DB: 保存通知记录
|
||
```
|
||
|
||
### 12.4 紧急呼叫处理时序图
|
||
|
||
```mermaid
|
||
sequenceDiagram
|
||
participant E as 老人/护理人员
|
||
participant C as 移动端
|
||
participant API as EmergencyController
|
||
participant S as EmergencyService
|
||
participant N as NoticeService
|
||
participant A as AlertService
|
||
participant DB as Repository
|
||
|
||
E->>C: 发起紧急呼叫
|
||
C->>API: POST /api/emergency-events
|
||
API->>S: createEvent(cmd)
|
||
S->>DB: 保存应急事件
|
||
S->>A: createAlert(event)
|
||
S->>N: 通知护理人员和管理人员
|
||
API-->>C: 返回事件编号和状态
|
||
C->>API: 提交处理结果
|
||
API->>S: finish(eventId, result)
|
||
S->>DB: 更新事件状态并归档
|
||
```
|
||
|
||
## 十三、AI 规则预警设计
|
||
|
||
### 13.1 规则预警范围
|
||
|
||
| 预警类型 | 数据来源 | 示例规则 | 处理对象 |
|
||
| --- | --- | --- | --- |
|
||
| 健康异常预警 | HealthRecord | 体温高于阈值、血压异常、血氧低于阈值 | 医护人员、护理主管 |
|
||
| 用药逾期预警 | MedicationReminder | 到点后未确认服药 | 护理人员、家属 |
|
||
| 护理任务逾期预警 | CareTask | 超过任务截止时间未完成 | 护理主管 |
|
||
| 设备故障预警 | Device, RepairTicket | 设备故障未派单或超时未修复 | 维修人员、管理人员 |
|
||
| 应急事件预警 | EmergencyEvent | 高等级应急事件未及时处理 | 管理人员、护理主管 |
|
||
| 风险老人识别 | HealthRecord, EmergencyEvent, CareTask | 多次异常记录或频繁应急事件 | 医护人员、机构管理人员 |
|
||
|
||
### 13.2 规则引擎处理流程
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
Source[业务数据变化] --> Match[匹配启用规则]
|
||
Match --> Hit{是否命中}
|
||
Hit -- 否 --> End[结束]
|
||
Hit -- 是 --> Create[生成预警记录]
|
||
Create --> Level[计算预警等级]
|
||
Level --> Notify[发送通知]
|
||
Notify --> Confirm[人工确认]
|
||
Confirm --> Handle[处理预警]
|
||
Handle --> Close[关闭或忽略]
|
||
```
|
||
|
||
## 十四、部署设计
|
||
|
||
### 14.1 部署图
|
||
|
||
```mermaid
|
||
flowchart TB
|
||
subgraph UserSide[用户侧]
|
||
Browser[后台浏览器]
|
||
MobileApp[移动端 App]
|
||
FamilyBrowser[家属端浏览器或App]
|
||
end
|
||
|
||
subgraph ServerSide[服务器侧]
|
||
WebServer[Web入口或静态资源服务]
|
||
JavaApp[JavaEE应用服务]
|
||
Scheduler[定时任务与规则扫描]
|
||
Database[(关系型数据库)]
|
||
FileStorage[(附件与导出文件目录)]
|
||
end
|
||
|
||
Browser --> WebServer
|
||
FamilyBrowser --> WebServer
|
||
MobileApp --> JavaApp
|
||
WebServer --> JavaApp
|
||
JavaApp --> Database
|
||
JavaApp --> FileStorage
|
||
Scheduler --> JavaApp
|
||
Scheduler --> Database
|
||
```
|
||
|
||
### 14.2 运行约束
|
||
|
||
| 项目 | 说明 |
|
||
| --- | --- |
|
||
| 应用形态 | JavaEE 单体应用,后台、移动端和家属端共用服务端能力。 |
|
||
| 数据库 | 关系型数据库保存业务数据、账号权限、日志和统计基础数据。 |
|
||
| 定时任务 | 用于扫描用药提醒、护理任务逾期和预警规则。 |
|
||
| 安全边界 | 所有业务接口必须经过认证授权,家属端只能访问绑定老人数据。 |
|
||
| 日志审计 | 登录、档案修改、入住退住、费用变更、应急事件和预警处理必须记录日志。 |
|
||
|
||
## 十五、测试与验收
|
||
|
||
### 15.1 测试策略
|
||
|
||
| 测试类型 | 测试重点 |
|
||
| --- | --- |
|
||
| 单元测试 | Service 层业务规则,如床位状态、护理任务状态、应急事件状态、规则预警判断。 |
|
||
| 接口测试 | 登录、档案、入住、床位、健康、护理、应急、设备、家属端、预警接口。 |
|
||
| 集成测试 | 后台管理端、移动端、家属端、服务层、数据库之间的数据闭环。 |
|
||
| 权限测试 | 不同角色访问菜单、接口和敏感数据时的授权边界。 |
|
||
| 状态流转测试 | 床位、护理任务、应急事件、预警记录的状态转换合法性。 |
|
||
| 验收测试 | 按功能需求编号逐项验证业务输出和流程闭环。 |
|
||
|
||
### 15.2 需求追踪矩阵
|
||
|
||
| 需求编号 | 对应模块 | 设计元素 | 验收场景 |
|
||
| --- | --- | --- | --- |
|
||
| FR-01 | 老人档案 | Elder, ElderService, /api/elders | 新增老人档案并按条件查询 |
|
||
| FR-02 | 入住登记 | CheckInRecord, Bed, /api/check-ins | 入住后床位变为占用 |
|
||
| FR-03 | 退住办理 | CheckInRecord, BedService | 退住后释放床位 |
|
||
| FR-04 | 房间管理 | Room, /api/rooms | 按楼层查询房间 |
|
||
| FR-05 | 床位管理 | Bed, BedService, /api/beds | 床位状态正确流转 |
|
||
| FR-06 | 健康记录 | HealthRecord, HealthService | 录入生命体征并查询趋势 |
|
||
| FR-07 | 健康档案 | Elder.healthSummary | 健康摘要与老人档案关联 |
|
||
| FR-08 | 护理等级 | CareLevel | 护理等级变更有记录 |
|
||
| FR-09 | 护理计划 | CarePlan, CareService | 护理计划生成任务 |
|
||
| FR-10 | 护理任务 | CareTask, CareService | 任务派发、执行、完成 |
|
||
| FR-11 | 巡检打卡 | PatrolRecord | 巡检记录关联老人和护理人员 |
|
||
| FR-12 | 紧急呼叫 | EmergencyEvent | 呼叫后生成应急事件 |
|
||
| FR-13 | 应急处理 | EmergencyService | 事件处理完成并归档 |
|
||
| FR-14 | 设备台账 | Device, DeviceService | 设备编号唯一,状态可维护 |
|
||
| FR-15 | 设备报修 | RepairTicket | 工单完成后设备恢复正常 |
|
||
| FR-16 | 公告发布 | Notice | 发布后目标用户可见 |
|
||
| FR-17 | 阅读状态 | NoticeRead | 阅读后状态更新 |
|
||
| FR-18 | 账号权限 | UserAccount, Role, AuthService | 停用账号不可登录 |
|
||
| FR-19 | 数据看板 | DashboardService | 看板指标与业务数据一致 |
|
||
| FR-20 | 用药计划 | MedicationPlan | 用药计划关联老人 |
|
||
| FR-21 | 用药提醒 | MedicationReminder, AlertService | 逾期未确认生成提醒 |
|
||
| FR-22 | 家属查看 | FamilyMember, 家属端接口 | 家属只看绑定老人 |
|
||
| FR-23 | 探访预约 | VisitAppointment | 预约审核状态可追踪 |
|
||
| FR-24 | 服务反馈 | Feedback | 反馈可回复归档 |
|
||
| FR-25 | 费用记录 | FeeRecord | 按老人和周期查询费用 |
|
||
| FR-26 | 活动课程 | CourseActivity | 活动发布并支持报名 |
|
||
| FR-27 | 活动评价 | Enrollment, ScoreEvaluation | 签到和评价可统计 |
|
||
| FR-28 | 预警规则 | AlertRule | 启用规则参与判断 |
|
||
| FR-29 | 预警记录 | AlertRecord | 预警确认、处理、关闭 |
|
||
| FR-30 | 风险识别 | AlertService, DashboardService | 生成高风险老人列表 |
|
||
| NFR-02 | 安全 | AuthService, 权限模型 | 未授权访问被拒绝 |
|
||
| NFR-06 | 审计 | AuditLog | 关键操作记录日志 |
|
||
|
||
### 15.3 分期验收标准
|
||
|
||
| 分期 | 验收标准 |
|
||
| --- | --- |
|
||
| 一期 | 老人入住、床位分配、健康记录、护理任务、紧急呼叫、设备报修、公告通知、权限控制和基础看板形成闭环。 |
|
||
| 二期 | 家属端、用药提醒、探访预约、服务反馈、费用记录、活动课程和评价统计可正常使用。 |
|
||
| 三期 | 规则配置、预警生成、预警处理、风险老人识别和预警统计可追踪、可验证。 |
|
||
|
||
## 十六、项目价值与总结
|
||
|
||
AI赋能智慧养老系统通过后台管理端、移动端 App 和家属服务端协同,覆盖养老机构从入住建档、床位管理、健康照护、护理任务、安全应急、设备运维、家属互动到运营看板的关键业务链路。系统以一期核心照护闭环为基础,二期补齐运营服务能力,三期通过规则预警实现轻量智能化。
|
||
|
||
从软件工程角度看,本报告补充了系统上下文图、角色权限图、用例图、分期路线图、领域划分图、总体架构图、功能模块图、ER 图、领域类图、服务层类图、流程图、状态图、时序图、规则预警图和部署图,使需求、架构、数据、接口、测试和验收之间具备明确追踪关系。
|
||
|
||
从课程实训角度看,该项目仍保持 JavaEE 单体分层架构,避免复杂模型训练、硬件协议适配和商业 SaaS 能力带来的过度设计,适合作为完整的软件工程课程项目和 JavaEE 应用开发实训案例。
|