Spring Boot 养老院管理系统:从入住、护理到费用结算的全流程实现(源码可领)
以老人、家属、护士和管理员四类角色为核心,连接院舍床位、护理、体检、服药和费用结算。
技术标签:Spring Boot | Java | MySQL | 养老院管理 | 多角色权限
|--------------------------------------------|
| 以老人、家属、护士和管理员四类角色为核心,连接院舍床位、护理、体检、服药和费用结算。 |
一、先从养老院日常工作看系统需求
养老院业务具有持续时间长、角色多、信息敏感和服务环节密集等特点。一位老人入住后,会产生院舍分配、护理服务、体检报告、服药记录、费用结算和退住等连续数据;家属需要了解老人状态,护士需要及时记录护理信息,管理员则要统筹床位、人员和费用。
因此,本项目不是单一的信息发布网站,而是一个面向养老服务全过程的管理平台。系统基于 Spring Boot 与 MySQL,前台提供通知公告、新闻资讯、留言反馈和院舍信息,后台围绕入住、护理、体检、服药和费用结算开展管理。
二、四类角色形成服务协同
|-----------|----------------------------------|
| 技术/角色 | 项目中的作用 |
| 老人用户 | 查看院舍、入住信息、体检报告、服药记录和费用结算。 |
| 老人家属 | 查看关联老人的入住、体检、服药和费用信息,并提交留言反馈。 |
| 护士用户 | 维护院舍入住、退住、体检报告和老人服药等护理数据。 |
| 管理员 | 管理系统用户、护理信息、院舍、入住退住、费用、公告、资讯和留言。 |
四类角色并不是简单共享同一套菜单。家属只能查看与其关联老人的信息,护士只能操作职责范围内的护理业务,老人主要查看个人服务记录,管理员拥有全局维护权限。角色权限和数据归属需要同时校验。
三、入住生命周期是系统的业务主线
- 院舍准备:维护房间编号、剩余床位、入住费用、负责护士等信息。
- 入住登记:保存老人基本信息、家属信息、入住日期、自理能力和房间分配。
- 在院服务:持续记录护理内容、体检报告和服药信息。
- 费用结算:汇总入住费用、护理服务和其他收费项目,生成结算清单。
- 退住办理:记录退住原因和离院日期,释放床位并结束相关服务。
生命周期设计可以避免多个模块各自维护状态。例如退住完成后,院舍剩余床位应同步增加,未完成的护理任务和费用应在退住前处理,避免出现房间已释放但账单仍未结清的情况。
四、功能结构与数据关系

图1 管理员业务用例

图2 养老院管理系统功能结构

图3 养老院业务实体关系
五、护理、体检与服药数据如何组织
护理信息可以记录护理服务名称、护理内容、服务价格、执行护士和服务时间;体检报告应关联老人、家属和负责护士,并保留报告日期与文件地址;服药记录则需要保存药物名称、剂量、用法、次数和时间。
这些数据具有明显的时间属性,数据库设计时应保留创建时间和业务发生时间。对于服药信息,还可以扩展"计划时间、实际执行时间、执行状态",为后续提醒和漏服统计提供基础。
六、费用结算不能只保存一个总金额
费用结算建议拆分为结算主表和费用明细表。主表保存老人、结算周期、应付金额、支付状态与支付方式;明细表保存房费、护理费、体检费和其他项目。这样既方便家属查看费用来源,也便于管理员统计不同服务项目的收入。
费用汇总示例(用于说明结算过程)
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| BigDecimal roomFee = calculateRoomFee(checkInDays, roomDailyPrice); BigDecimal careFee = sumCareServiceFee(elderId, period); BigDecimal otherFee = sumOtherFee(elderId, period); BigDecimal payable = roomFee.add(careFee).add(otherFee); createSettlement(elderId, period, payable, "未支付"); |
七、数据库与权限控制
- 院舍信息表:房间编号、床位数量、剩余床位、费用、负责护士。
- 入住信息表:老人、家属、院舍、入住日期、自理能力和入住状态。
- 护理信息表:护理项目、执行护士、服务内容、服务费用和服务时间。
- 体检报告表:老人、报告文件、体检日期和负责护士。
- 老人服药表:药物、剂量、用法、次数、计划时间和执行记录。
- 费用结算表:结算周期、费用明细、总金额、支付状态和支付方式。
涉及健康和费用的数据应设置严格访问控制。查询老人信息时,除校验用户角色外,还要校验家属与老人之间的关联关系。敏感字段应进行脱敏展示,关键操作写入日志,避免越权查询和误删除。
八、系统界面展示

图4 养老院管理系统首页

图5 护理信息管理

图6 入住信息管理

图7 体检报告管理
九、测试场景与升级方向
- 床位已满时是否禁止新增入住记录。
- 退住后床位数量是否正确释放。
- 家属是否只能查看关联老人的体检、服药和费用信息。
- 护士是否只能维护权限范围内的护理业务。
- 费用结算金额、支付状态和明细是否保持一致。
后续可增加健康指标趋势图、异常指标提醒、服药定时提醒、护理任务排班和移动端签到;同时可对页面字号、按钮尺寸和交互路径进行适老化优化。
十、源码与配套资料
|---------------------------------------------------------------|
| 需要完整源码、MySQL 数据库、部署教程、论文和答辩 PPT,可在评论区回复"养老院管理系统",按项目整理资料。 |