可白嫖源码---48433基于电子病历共享系统的设计与实现(案例分析)-附源码

  

本文设计并实现了一个基于电子病历共享系统,该系统旨在提升电子病历共享系统的综合管理水平和服务质量。系统采用Spring Boot框架作为后端开发基础,结合前端HTML、CSS及JavaScript技术,实现了前后端的分离与高效交互。数据库方面,系统选用了MySQL数据库进行数据存储与管理,确保了数据的安全性与可靠性。

在技术实现上,系统涵盖了医生信息管理、护理项目管理、检查信息管理、药品信息管理等多个核心模块。医生信息管理模块实现了医生基本信息的录入、查询与修改;就诊信息管理模块则记录了用户的病史、诊断报告及治疗方案,便于医生快速了解用户情况。系统还实现了入院申请,出院管理以及就诊信息、入院、住院安排、出院等全流程信息管理,有效提升了医院的工作效率。整体而言,该系统功能全面、操作便捷,为电子病历共享系统提供了强有力的技术支持,具有较高的实用价值和社会意义。

关键词:Spring Boot;MySQL;医生信息管理。


ABSTRACT

This article designs and implements a shared system based on electronic medical records, aiming to improve the comprehensive management level and service quality of the electronic medical records sharing system. The system uses the Spring Boot framework as the backend development foundation, combined with front-end HTML, CSS, and JavaScript technologies, to achieve separation and efficient interaction between the front and back ends. In terms of database, the system uses MySQL database for data storage and management, ensuring the security and reliability of data.
In terms of technical implementation, the system encompasses multiple core modules, including doctor information management, nursing project management, examination information management, and drug information management. The doctor information management module implements the entry, query, and modification of basic doctor information; The medical information management module records the user's medical history, diagnosis report, and treatment plan, which facilitates doctors to quickly understand the user's condition. The system also implements the whole process information management of admission application, discharge management, and medical information, admission, hospitalization arrangement, and discharge, effectively improving the efficiency of the hospital. Overall, the system is comprehensive in function and easy to operate, providing strong technical support for electronic medical record sharing systems, with high practical value and social significance.
Keywords: Spring Boot; MySQL; Doctor information management.

目  录

摘  要

ABSTRACT

1. 绪  论

1.1 研究背景

1.2 研究意义

1.3 国内现状

1.4 国外现状

2. 相关技术介绍

2.1 Springboot框架

2.2 Java 语言

3. 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.2 系统功能需求

3.2.1 注册用户主要功能

3.2.2 医生用户主要功能

3.2.3 管理员主要功能

3.3 非功能性需求分析

3.4 系统用户用例分析

3.4.1 注册用户用例图

3.4.2 医生用户用例图

3.4.3 管理员用例图

3.5 系统流程分析

3.5.1 用户修改密码操作流程

3.5.2 用户登录操作流程

3.5.3 添加药品信息流程

4. 系统设计

4.1 功能模块设计

4.2 数据库设计

4.2.1 概念设计

4.2.2 逻辑设计

5. 系统实现

5.1 注册用户主要功能实现

5.1.1 用户注册

5.1.2 用户登录

5.1.3 医生信息

5.1.4 药品信息

5.1.5 护理项目

5.2 医生用户主要功能实现

5.2.1 医生信息管理

5.2.2 预约挂号管理

5.2.3 就诊信息管理

5.2.4 医生诊断管理

5.3 管理员主要功能实现

5.3.1 科室名称管理

5.3.2 医生信息管理

5.3.3 药品信息管理

5.3.4 护理项目管理

6. 系统测试

6.1 测试目的

6.2 测试用例

6.3 测试结果

结  论

致  谢

参考文献


  1. 绪  论
    1. 研究背景

随着医疗技术的不断进步和人们健康意识的日益增强,电子病历共享系统管理需求愈发迫切[1]。传统的信息管理方式存在诸多不足,如信息记录不完整、查询效率低下、数据安全性难以保障等,这些问题严重影响了医院的服务质量和患者的就医体验。开发一个高效、安全、易用的电子病历共享系统显得尤为重要[2]。该系统旨在通过现代信息技术手段,实现对电子病历共享系统的全面、准确、快速管理,为医院提供科学、规范的管理工具,提升医院的管理水平和服务质量[3]。

    1. 研究意义

随着医疗技术的不断进步和人们健康意识的日益增强,电子病历共享系统管理需求愈发迫切[3]。传统的信息管理方式存在诸多不足,如信息记录不完整、查询效率低下、数据安全性难以保障等,这些问题严重影响了医院的服务质量和患者的就医体验。开发一个高效、安全、易用的电子病历共享系统显得尤为重要[4]。该系统旨在通过现代信息技术手段,实现对大电子病历共享系统的全面、准确、快速管理,为医院提供科学、规范的管理工具,提升医院的管理水平和服务质量。

    1. 国内现状

随着医疗信息化和智能化程度的持续提高,越来越多的医院开始重视并投入到电子病历共享管理系统的建设中。这些系统大多采用先进的信息技术手段,实现了对信息的全面采集、深度分析和有效利用[5]。但是由于不同地区、不同医院之间的信息化水平存在差异,导致这些系统在功能、性能、安全性等方面存在较大的差异。而且一些医院在系统的建设和使用过程中,还面临着数据孤岛、信息共享不畅等问题,影响了系统的实际应用效果。由此可知国内病历共享系统的建设仍需进一步完善和优化。

    1. 国外现状

国外电子病历共享系统建设已进入成熟深化阶段。美国通过立法与财政支持推动电子病历普及,目前超70%的医院通过HMISS五级及以上认证,Epic Systems等企业占据主导地位,其系统支持跨机构数据互联与AI辅助诊断[6]。英国NHS计划在2023年前实现全系统无纸化,并强制采用SNOMED临床术语集保障数据标准化。欧洲多国建立国家级电子病历数据库,推动数据跨域共享与智能分析[7]。新加坡通过全国电子健康记录系统整合公立医疗机构数据,实现临床决策支持与医保控费协同。这些国家普遍采用加密传输、RBAC权限控制等技术保障数据安全,并通过标准化接口实现系统互联,为医疗资源优化配置与精准医疗提供支撑[8]。


  1. 相关技术介绍
    1. Springboot框架

Spring Boot是一个基于Spring框架的开源项目,它提供了快速、简洁的方式来构建独立的、生产级别的Spring应用程序。Spring Boot通过大量的默认配置和自动配置,极大地简化了Spring应用的初始搭建和开发过程。在构建电子病历共享系统时,Spring Boot的依赖管理、自动配置和嵌入式服务器等功能,使得开发者能够专注于业务逻辑的实现,而无需过多关注底层配置和部署问题[6]。Spring Boot还支持多种数据库和前端框架的集成,为系统的开发提供了极大的便利。

    1. Java 语言

JavaScript是一种广泛使用的脚本语言,它主要用于Web开发,实现网页的动态效果和交互功能。在构建电子病历共享系统时,JavaScript被用于前端页面的开发,通过与后端Spring Boot服务的交互,实现了数据的动态展示和页面的实时更新。JavaScript的灵活性和强大的DOM操作能力,使得开发者能够创建出丰富多样的用户界面,提升用户的使用体验。JavaScript还支持异步请求和数据处理,为系统的实时性和响应速度提供了保障。


  1. 系统分析
    1. 可行性分析
      1. 技术可行性

采用Spring Boot框架开发电子病历共享系统是完全可行的。Spring Boot以其简洁、快速、高效的特点,为开发者提供了丰富的功能和便捷的开发体验。Spring Boot与JavaScript、MySQL等技术的集成也非常成熟,能够轻松实现前后端分离、数据持久化等功能。Spring Boot还支持多种插件和第三方库,为系统的扩展和升级提供了极大的便利。从技术层面来说,该系统的开发是切实可行的。

      1. 经济可行性

开发电子病历共享系统也是可行的。该系统的开发成本相对较低,主要包括人力成本、硬件成本和软件成本等。人力成本是主要的开销,但相对于购买商业软件或定制开发来说,自主开发的成本仍然较低。该系统的运行成本也较低,主要包括服务器维护、数据备份和更新等费用。该系统能够显著提高医院的管理效率和服务质量,从而带来更大的经济效益和社会效益。从经济层面来说,该系统的开发是划算的。

    1. 系统功能需求

电子病历共享系统包含注册用户、医生用户和管理员三个角色划分,每个角色对应的主要功能如下:

      1. 注册用户主要功能
  1. 首页:展示的是轮播图、医疗资讯、医生信息等推荐
  2. 注册:用户点击注册,进入注册页面,填写相关账号、密码、确认密码、昵称、邮箱、用户姓名、用户性别、用户年龄、选择身份等字段信息,点击下方注册按钮,提示注册成功后,系统将自动跳转回到登录页面。
  3. 登录:登录是填写好账号、密码以及验证通过,然后点击“登录”。
  4. 我的账户:显示用户个人资料,可以更换头像,编辑昵称、邮箱、名称等信息,点击提交,修改成功。修改密码:主要输入原密码、新密码,请确认密码后点击确认修改后提示修改成功跳转到登录页面,再次登录的话需要用新密码才能登录成功。
  5. 通知公告:主要展示后台管理员发布的公告信息和重要通知。
  6. 医疗资讯:主要展示后台发布的的医疗资讯信息。点击信息可点赞、收藏、发表评论等操作。
  7. 医生信息:主要展示后台发布的所有医生的信息,用户可浏览医生信息,用户可根据科室及医生擅长领域进行预约挂号。点击信息可点赞、收藏、发表评论等操作。
  8. 药品信息:主要展示后台发布的药品信息,点击信息可点赞、收藏、发表评论等操作。
  9. 护理项目:主要展示后台发布的护理项目,用户可浏览护理项目,用户可根据护理项目类型进行预约,点击信息可点赞、收藏、发表评论等操作。
  10. 个人中心:包含个人首页、预约挂号、就诊信息、医生诊断、检查信息、处方开具、入院申请、出院信息、护理预约、收藏和评论管理等。预约挂号:展示该用户的预约挂号记录,并对挂号费进行支付;就诊信息:展示该用户所有就诊信息记录;医生诊断:展示用户的所有医生诊断信息记录;检查信息:展示该用户所有检查信息记录;并对检查费用进行支付;处方开具:展示该用户所有医生的处方开具,并对处方费用进行支付;入院申请:查看用户入院申请审核状态;出院信息:展示该用户的出院信息记录;护理预约:展示该用户的护理预约审核状态;并对护理费用进行支付;收藏:用户可收藏自己感兴趣的医生信息,放到自己的收藏夹方便自己下次浏览预约;评论管理:管理个人评论,包括查看、编辑和删除,确保交流环境的积极健康。
      1. 医生用户主要功能
  1. 用户登录:医生用户需要管理员审核通过后才可以登录。首先点击“登录”按钮,输入用户名、密码、验证码登录系统,登录时前端会自动校验用户名与密码,用户输入正确则登录成功,输入错误会有提示信息。
  2. 后台首页:展示的是药品信息统计。
  3. 医生信息管理:主要展示该医生的医生信息详情,支持查询、修改等操作。
  4. 预约挂号管理:主要展示该医生下所有用户的预约挂号详情,支持查询、修改等操作。
  5. 就诊信息管理:主要展示该医生下所有用户的就诊信息详情,支持查询、修改等操作。
  6. 医生诊断管理:主要展示该医生下所有用户的诊断详情,支持查询、修改、删除等操作。
  7. 检查信息管理:主要展示该医生下所有用户的检查详情,支持查询、修改、删除等操作。
  8. 检查报告管理:主要展示该医生下所有用户的检查报告详情,支持查询、修改、删除等操作。
  9. 处方开具管理:主要展示该医生下所有用户的处方开具详情,支持查询、修改、删除等操作。
  10. 入院申请管理:主要展示该医生下所有用户的入院申请详情,支持查询、修改等操作。
  11. 出院信息管理:主要展示该医生下所有用户的出院信息详情,支持查询、修改、删除等操作。
  12. 药品信息管理:主要展示所有药品信息详情,支持查询、修改等操作。
      1. 管理员主要功能
  1. 管理员登录:首先点击“登录”按钮,输入账号、密码、验证码点击登录按钮,登录时前端会自动校验用户名与密码以及上传头像验证,用户输入正确则登录成功,输入错误会有提示信息。
  2. 后台首页:展示的是药品信息统计。
  3. 系统用户:管理员可以管理平台的所有系统用户包括管理员、注册用户以及医生用户,确保用户权限和信息的安全性。可进行增删改查等操作。
  4. 科室名称管理:包含科室名称列表和科室名称添加功能。科室名称列表:主要管理科室名称详情,支持增删改查等操作。科室名称添加:主要是添加新的科室名称数据。
  5. 医生信息管理:包含医生信息列表和医生信息添加功能。医生信息列表:主要管理所有医生的医生信息详情,支持增删改查等操作。医生信息添加:主要是添加新的医生信息数据,添加的信息可在前台首页展示。
  6. 预约挂号管理:主要管理所有用户的预约挂号,支持查询、修改、删除等操作。
  7. 就诊信息管理:主要管理所有用户的就诊信息,支持查询、修改、删除等操作。
  8. 医生诊断管理:主要管理所有用户的医生诊断详情,支持查询、修改、删除等操作。
  9. 检查信息管理:主要管理所有用户的检查信息详情,支持查询、修改、删除等操作。
  10. 检查报告管理:主要管理所有用户的检查报告详情,支持查询、修改、删除等操作。
  11. 处方开具管理:主要管理所有用户的处方开具详情,支持查询、修改、删除等操作。
  12. 入院申请管理:主要管理所有用户的入院申请详情,并审核入院申请,支持查询、修改、删除等操作。
  13. 出院信息管理:主要管理所有用户的出院信息,支持查询、修改、删除等操作。
  14. 药品类型管理:包含药品类型列表和药品类型添加功能。药品类型列表:主要管理所有药品类型,支持增删改查等操作。药品类型添加:主要是添加新的药品类型数据。
  15. 药品信息管理:包含药品信息列表和药品信息添加功能。药品信息列表:主要管理所有药品信息,支持增删改查等操作。药品信息添加:主要是添加新的药品信息数据。
  16. 护理类型管理:包含护理类型列表和护理类型添加功能。护理类型列表:主要管理所有护理类型,支持增删改查等操作。护理类型添加:主要是添加新的护理类型数据。
  17. 护理项目管理:包含护理信息列表和护理信息添加功能。护理项目列表:主要管理所有护理项目,支持增删改查等操作。护理项目添加:主要是添加新的护理项目数据。
  18. 护理预约管理:主要管理所有用户的护理预约信息,支持查询、修改、删除等操作。
  19. 系统管理:主要是轮播图管理:管理员可以管理平台首页的轮播图内容,提供宣传和推广信息,可进行增删改查等操作。添加的轮播图可在前台首页展示。
  20. 通知公告管理:管理员可发布公告信息和重要通知,发布的公告信息可在前台首页展现,可进增删改查等操作。
  21. 资源管理:包含医疗资讯信息和资讯分类等功能,医疗资讯信息:管理员可查看添加的医疗资讯信息,可进行增删改查等操作。资讯分类:管理员可手动添加资讯分类。
  22. 权限管理:主要管理所有用户的权限操作。
    1. 非功能性需求分析

在电子病历共享系统的毕业设计中,非功能性需求分析是也是非常重要的。它主要关注性能、安全性、易用性、可靠性、可维护性等,这些特性对于确保系统的稳定运行和用户满意度至关重要。

表3-1 非功能性需求分析

序号

非功能性需求

需求要求

1

性能

系统需快速响应,处理大数据量时无明显延迟,确保高效运行

2

安全性

严格数据加密,防止信息泄露,提供权限管理,确保数据访问安全。

3

易用性

界面简洁明了,操作流程直观易懂,降低用户学习成本

4

可靠性

系统稳定运行,故障率低,数据备份恢复机制完善,保障业务连续性。

5

可维护性

模块化设计,代码清晰可读,便于后期维护与功能升级 

    1. 系统用户用例分析
      1. 注册用户用例图

电子病历共享系统中注册用户包含注册、登录、首页、我的账户、通知公告、医疗资讯、医生信息、药品信息、护理项目、个人中心等功能。注册用户用例图如下所示:

图3-1 注册用户用例图

      1. 医生用户用例图

电子病历共享系统中医生用户包含注册登录、后台首页、医生信息管理、预约挂号管理、就诊信息管理、医生诊断管理、检查信息管理、检查报告管理、处方开具管理、入院申请管理、出院信息管理、药品信息管理等功能。医生用户用例图如下所示:

图3-2 医生用户用例图

      1. 管理员用例图

电子病历共享系统中管理员包含登录、系统用户、科室名称管理、医生信息管理、预约挂号管理、就诊信息管理、医生诊断管理、检查信息管理、检查报告管理、处方开具管理、入院申请管理、出院信息管理、药品类型管理、药品信息管理、护理类型管理、护理项目管理、护理预约管理、系统管理、通知公告管理、资源管理、权限管理等功能。管理员用例图如下所示:

图3-3 管理员用例图

    1. 系统流程分析
      1. 用户修改密码操作流程

所有用户可以我的账户信息页面,点击修改修改密码进行修改登录密码操作,修改密码流程如图所示:

图3-4 修改密码流程图

      1. 用户登录操作流程

所有用户登录系统需要前端校验用户名、密码是否正确以及是否为空,具体流程图如图所示:

图3-5 用户登录流程图

      1. 添加药品信息流程

添加药品信息,输入药品名称、药品类型、药品功效等信息,并校验输入是否正确,药品信息添加流程图,如图所示:

图3-6 药品信息添加流程图


  1. 系统设计
    1. 功能模块设计

电子病历共享系统主要涉及有注册用户、医生用户和管理员三个角色,每个角色对应的功能模块如图4.1所示。

图4-1系统功能结构图

    1. 数据库设计
      1. 概念设计

电子病历共享系统中注册用户、管理员、医生信息、医生诊断、处方开具、公告E-R实体关系图

图4-2总体ER图

      1. 逻辑设计

通过4.2小节电子病历共享系统中总E-R关系图上大概得出一共需要创建很多个数据表。在此主要罗列几个主要的数据库表结构设计。

介绍了一些根据各类别主要数据库表的设计结构以及基本功能建立数据库表:

表 4-1-doctor_information(医生信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

doctor_information_id

int

医生信息ID

2

doctor_account_number

int

医生账号

3

doctors_name

varchar

64

医生姓名

4

years_of_employment

varchar

64

从业年限

5

department_name

varchar

64

科室名称

6

areas_of_expertise

varchar

64

擅长领域

7

doctors_photo

varchar

255

医生照片

8

registration_fee

double

挂号费用

9

doctor_introduction

text

65535

医生简介

10

hits

int

点击数

11

praise_len

int

点赞数

12

collect_len

int

收藏数

13

comment_len

int

评论数

14

appointment_registration_limit_times

int

挂号限制次数

15

create_time

datetime

创建时间

16

update_time

timestamp

更新时间

表 4-2-doctor_diagnosis(医生诊断)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

doctor_diagnosis_id

int

医生诊断ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

visit_time

datetime

就诊时间

11

disease_description

text

65535

病症描述

12

diagnostic_results

text

65535

诊断结果

13

check_information_limit_times

int

检查限制次数

14

create_time

datetime

创建时间

15

update_time

timestamp

更新时间

16

source_table

varchar

255

来源表

17

source_id

int

来源ID

18

source_user_id

int

来源用户

表 4-3-prescribing(处方开具)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

prescribing_id

int

处方开具ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

issuing_time

datetime

开具时间

11

drug_name

varchar

64

药品名称

12

drug_no

varchar

64

药品编号

13

drug_unit_price

varchar

64

药品单价

14

quantity_of_drugs

double

药品数量

15

drug_amount

varchar

64

药品金额

16

issuing_details

text

65535

开具详情

17

pay_state

varchar

16

支付状态

18

pay_type

varchar

16

支付类型: 微信、支付宝、网银

19

create_time

datetime

创建时间

20

update_time

timestamp

更新时间

21

source_table

varchar

255

来源表

22

source_id

int

来源ID

23

source_user_id

int

来源用户

表 4-4-notice(公告)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

notice_id

mediumint

公告ID

2

title

varchar

125

标题

3

content

longtext

4294967295

正文

4

create_time

timestamp

创建时间

5

update_time

timestamp

更新时间

表 4-5-registered_user(注册用户)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

registered_user_id

int

注册用户ID

2

user_name

varchar

64

用户姓名

3

user_gender

varchar

64

用户性别

4

user_age

double

用户年龄

5

user_phone

varchar

16

用户电话

6

examine_state

varchar

16

审核状态

7

user_id

int

用户ID

8

create_time

datetime

创建时间

9

update_time

timestamp

更新时间

表 4-6-doctor_user(医生用户)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

doctor_user_id

int

医生用户ID

2

doctors_name

varchar

64

医生姓名

3

doctors_phone

varchar

16

医生电话

4

department_name

varchar

64

科室名称

5

years_of_employment

double

从业年限

6

areas_of_expertise

varchar

64

擅长领域

7

examine_state

varchar

16

审核状态

8

user_id

int

用户ID

9

create_time

datetime

创建时间

10

update_time

timestamp

更新时间

表 4-7-application_for_admission(入院申请)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

application_for_admission_id

int

入院申请ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

application_time

datetime

申请时间

11

reason_for_application

text

65535

申请原因

12

examine_state

varchar

16

审核状态

13

examine_reply

varchar

255

审核回复

14

discharge_information_limit_times

int

出院限制次数

15

create_time

datetime

创建时间

16

update_time

timestamp

更新时间

17

source_table

varchar

255

来源表

18

source_id

int

来源ID

19

source_user_id

int

来源用户

表 4-8-check_information(检查信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

check_information_id

int

检查信息ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

inspection_time

datetime

检查时间

11

inspection_items

varchar

64

检查项目

12

inspection_fee

double

检查费用

13

check_details

text

65535

检查详情

14

pay_state

varchar

16

支付状态

15

pay_type

varchar

16

支付类型: 微信、支付宝、网银

16

inspection_report_limit_times

int

报告限制次数

17

create_time

datetime

创建时间

18

update_time

timestamp

更新时间

19

source_table

varchar

255

来源表

20

source_id

int

来源ID

21

source_user_id

int

来源用户

表 4-9-code_token(验证码)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

code_token_id

int

验证码ID

2

token

varchar

255

令牌

3

code

varchar

255

验证码

4

expire_time

timestamp

失效时间

5

create_time

timestamp

创建时间

6

update_time

timestamp

更新时间

表 4-10-collect(收藏)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

collect_id

int

收藏ID

2

user_id

int

收藏人ID

3

source_table

varchar

255

来源表

4

source_field

varchar

255

来源字段

5

source_id

int

来源ID

6

title

varchar

255

标题

7

img

varchar

255

封面

8

create_time

timestamp

创建时间

9

update_time

timestamp

更新时间

表 4-11-comment(评论)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

comment_id

int

评论ID

2

user_id

int

评论人ID

3

reply_to_id

int

回复评论ID

4

content

longtext

4294967295

内容

5

nickname

varchar

255

昵称

6

avatar

varchar

255

头像地址

7

create_time

timestamp

创建时间

8

update_time

timestamp

更新时间

9

source_table

varchar

255

来源表

10

source_field

varchar

255

来源字段

11

source_id

int

来源ID

表 4-12-department_name(科室名称)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

department_name_id

int

科室名称ID

2

department_name

varchar

64

科室名称

3

create_time

datetime

创建时间

4

update_time

timestamp

更新时间

表 4-13-discharge_information(出院信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

discharge_information_id

int

出院信息ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

discharge_time

datetime

出院时间

11

discharge_details

text

65535

出院详情

12

create_time

datetime

创建时间

13

update_time

timestamp

更新时间

14

source_table

varchar

255

来源表

15

source_id

int

来源ID

16

source_user_id

int

来源用户

表 4-14-appointment_registration(预约挂号)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

appointment_registration_id

int

预约挂号ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

registration_fee

double

挂号费用

11

appointment_time

datetime

预约时间

12

reservation_order_number

varchar

64

预约单号

13

appointment_details

text

65535

预约详情

14

pay_state

varchar

16

支付状态

15

pay_type

varchar

16

支付类型: 微信、支付宝、网银

16

visit_information_limit_times

int

就诊限制次数

17

create_time

datetime

创建时间

18

update_time

timestamp

更新时间

19

source_table

varchar

255

来源表

20

source_id

int

来源ID

21

source_user_id

int

来源用户

表 4-15-drug_information(药品信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

drug_information_id

int

药品信息ID

2

drug_name

varchar

64

药品名称

3

drug_no

varchar

64

药品编号

4

type_of_drug

varchar

64

药品类型

5

pictures_of_medicines

varchar

255

药品图片

6

drug_unit_price

double

药品单价

7

total_inventory

double

库存总量

8

drug_efficacy

text

65535

药品功效

9

usage_and_dosage

text

65535

用法用量

10

drug_details

text

65535

药品详情

11

hits

int

点击数

12

praise_len

int

点赞数

13

collect_len

int

收藏数

14

comment_len

int

评论数

15

create_time

datetime

创建时间

16

update_time

timestamp

更新时间

表 4-16-inspection_report(检查报告)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

inspection_report_id

int

检查报告ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

8

doctors_name

varchar

64

医生姓名

9

department_name

varchar

64

科室名称

10

inspection_time

datetime

检查时间

11

inspection_items

varchar

64

检查项目

12

inspection_report

varchar

255

检查报告

13

inspection_results

text

65535

检查结果

14

prescribing_limit_times

int

处方限制次数

15

application_for_admission_limit_times

int

入院限制次数

16

create_time

datetime

创建时间

17

update_time

timestamp

更新时间

18

source_table

varchar

255

来源表

19

source_id

int

来源ID

20

source_user_id

int

来源用户

表 4-17-nursing_appointment(护理预约)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

nursing_appointment_id

int

护理预约ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

nursing_name

varchar

64

护理名称

8

type_of_care

varchar

64

护理类型

9

care_price

double

护理价格

10

appointment_time

datetime

预约时间

11

reservation_order_number

varchar

64

预约单号

12

appointment_details

text

65535

预约详情

13

pay_state

varchar

16

支付状态

14

pay_type

varchar

16

支付类型: 微信、支付宝、网银

15

create_time

datetime

创建时间

16

update_time

timestamp

更新时间

17

source_table

varchar

255

来源表

18

source_id

int

来源ID

19

source_user_id

int

来源用户

表 4-18-nursing_project(护理项目)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

nursing_project_id

int

护理项目ID

2

nursing_name

varchar

64

护理名称

3

type_of_care

varchar

64

护理类型

4

nursing_pictures

varchar

255

护理图片

5

care_price

double

护理价格

6

nursing_content

text

65535

护理内容

7

care_details

text

65535

护理详情

8

hits

int

点击数

9

praise_len

int

点赞数

10

collect_len

int

收藏数

11

comment_len

int

评论数

12

nursing_appointment_limit_times

int

预约限制次数

13

create_time

datetime

创建时间

14

update_time

timestamp

更新时间

表 4-19-visit_information(就诊信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

visit_information_id

int

就诊信息ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

表 4-4-notice(公告)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

notice_id

mediumint

公告ID

2

title

varchar

125

标题

3

content

longtext

4294967295

正文

4

create_time

timestamp

创建时间

5

update_time

timestamp

更新时间

表 4-19-visit_information(就诊信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

visit_information_id

int

就诊信息ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_gender

varchar

64

用户性别

5

user_age

varchar

64

用户年龄

6

user_phone

varchar

64

用户电话

7

doctor_account_number

int

医生账号

表 4-20-type_of_care(护理类型)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

type_of_care_id

int

护理类型ID

2

type_of_care

varchar

64

护理类型

3

create_time

datetime

创建时间

4

update_time

timestamp

更新时间

表 4-21-type_of_drug(药品类型)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

type_of_drug_id

int

药品类型ID

2

type_of_drug

varchar

64

药品类型

3

create_time

datetime

创建时间

4

update_time

timestamp

更新时间


  1. 系统实现
    1. 注册用户主要功能实现
      1. 用户注册

注册:用户点击注册,进入注册页面,填写相关账号、密码、确认密码、昵称、邮箱、用户姓名、用户性别、用户年龄、选择身份等字段信息,点击下方注册按钮,提示注册成功后,系统将自动跳转回到登录页面。注册界面如下图所示。

图5-1 注册界面

关键代码:

      1. 用户登录

登录:登录是填写好账号、密码以及验证通过,然后点击“登录”。登录界面如下图所示。

图5-2 登录界面

关键代码:

      1. 医生信息

医生信息:主要展示后台发布的所有医生的信息,用户可浏览医生信息,用户可根据科室及医生擅长领域进行预约挂号。点击信息可点赞、收藏、发表评论等操作。医生信息界面如下图所示。

图5-3 医生信息界面

关键代码:

      1. 药品信息

药品信息:主要展示后台发布的药品信息,点击信息可点赞、收藏、发表评论等操作。药品信息界面如下图所示。

图5-4药品信息界面

      1. 护理项目

护理项目:主要展示后台发布的护理项目,用户可浏览护理项目,用户可根据护理项目类型进行预约,点击信息可点赞、收藏、发表评论等操作。护理项目界面如下图所示。

图5-5护理项目界面

    1. 医生用户主要功能实现
      1. 医生信息管理

医生信息管理:主要展示该医生的医生信息详情,支持查询、修改等操作。医生信息管理界面如下图所示。

图5-6医生信息管理界面

关键代码:

      1. 预约挂号管理

预约挂号管理:主要展示该医生下所有用户的预约挂号详情,支持查询、修改等操作。预约挂号管理界面如下图所示。

图5-7预约挂号管理界面

      1. 就诊信息管理

就诊信息管理:主要展示该医生下所有用户的就诊信息详情,支持查询、修改等操作。就诊信息管理界面如下图所示

图5-8就诊信息管理界面

      1. 医生诊断管理

医生诊断管理:主要展示该医生下所有用户的诊断详情,支持查询、修改、删除等操作。医生诊断管理界面如下图所示

图5-9医生诊断管理界面

    1. 管理员主要功能实现
      1. 科室名称管理

科室名称管理:包含科室名称列表和科室名称添加功能。科室名称列表:主要管理科室名称详情,支持增删改查等操作。科室名称添加:主要是添加新的科室名称数据。科室名称管理界面如下图所示。

图5-10科室名称管理界面

关键代码:

      1. 医生信息管理

医生信息管理:包含医生信息列表和医生信息添加功能。医生信息列表:主要管理所有医生的医生信息详情,支持增删改查等操作。医生信息添加:主要是添加新的医生信息数据,添加的信息可在前台首页展示。医生信息管理界面如下图所示。

图5-11医生信息管理界面

关键代码:

      1. 药品信息管理

药品信息管理:包含药品信息列表和药品信息添加功能。药品信息列表:主要管理所有药品信息,支持增删改查等操作。药品信息添加:主要是添加新的药品信息数据。药品信息管理界面如下图所示。

图5-12药品信息管理界面

      1. 护理项目管理

护理项目管理:包含护理信息列表和护理信息添加功能。护理项目列表:主要管理所有护理项目,支持增删改查等操作。护理项目添加:主要是添加新的护理项目数据。护理项目管理界面如下图所示。

图5-13护理项目管理界面

关键代码:

  1. 系统测试
    1. 测试目的

软件测试的目的是为了尽可能的发现系统功能中所存在的缺陷。系统测试是软件生命周期中必不可少的环节之一,它旨在验证整个软件系统是否满足需求规格说明书定义的要求。

    1. 测试用例

用户登录功能测试:

表6-1 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

查看药品信息功能测试:

表6-2 查看药品信息功能测试表

用例名称

查看药品信息

目的

测试查看药品信息

前提

用户登录

测试流程

点击药品信息按钮

预期结果

可以查看药品信息

实际结果

实际结果与预期结果一致

管理员添加课程任务测试:

表6-3 管理员添加药品信息测试表

用例名称

管理员添加药品信息测试用例

目的

测试管理员添加药品信息功能

前提

管理员正常登录情况下

测试流程

1)点击药品信息管理,点击药品信息添加,点击添加按钮,输入相关药品信息

2)点击进行提交。

预期结果

提交以后,该药品信息显示在对应列表中 

实际结果

实际结果与预期结果一致

药品信息修改功能测试:

表6-4药品信息修改功能测试表

用例名称

药品信息修改测试

目的

测试药品信息修改功能

前提

管理员登录—》药品信息管理—》药品信息列表

测试流程

1)点击药品信息管理,点击药品信息重置,点击重置按钮,药品1,重置药品2.

2)点击进行提交。

预期结果

提交以后,该药品名称更改为药品2显示在对应列表中

实际结果

实际结果与预期结果一致

药品信息删除功能测试:

表6-5药品信息删除功能测试表

用例名称

药品信息删除测试

目的

测试药品信息删除功能

前提

管理员登录—》药品信息管理—》药品信息列表

测试流程

1)选择一个药品信息。

2)点击删除按钮。

预期结果

提示删除成功,药品信息列表不在展示该药品信息

实际结果

实际结果与预期结果一致

密码修改功能测试:

表6-6密码修改功能测试表

用例名称

密码修改测试用例

目的

测试用户密码修改功能

前提

用户正常登录情况下

测试流程

1)注册用户密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

    1. 测试结果

在本次主要测试普通用户登录、修改密码、查看药品信息操作以及管理员添加、删除、修改药品信息等业务流程操作。验证所有操作都能够正常运行,因此能够保证本次设计的,已实现的功能能够正常运行并且相关数据库的信息也同样保存正确。

结  论

在开发电子病历共享系统之前,我原本认为这是一项较为简单的任务,但在实际开发过程中,我逐渐意识到自身在许多技术细节和编程思想上仍存在不足。例如,在前后端交互、权限控制、数据存储等方面,我遇到了不少问题,暴露出对Spring Boot框架理解不够深入、前端Vue技术掌握不熟练等短板。通过不断查阅资料、调试代码,我逐步掌握了系统开发的核心流程,也更加理解了模块化设计与前后端协同开发的重要性。

在项目推进过程中,我也深刻体会到,任何系统的开发都不只是代码的堆砌,更需要严谨的逻辑思维和细致的需求分析。虽然系统目前已基本实现预期功能,但仍有优化空间。这次实践让我明白,只有脚踏实地、不断学习,才能真正提升自己的技术水平。


致  谢

在设计与实现基于Spring Boot的电子病历共享系统的过程中,我得到了众多的支持与帮助,对此我深表感激。我要感谢我的指导老师,他们在我遇到技术难题和设计困惑时给予了宝贵的建议和方向指引,无私的支持确保了项目的顺利进行。我也要感谢我的家人,他们的理解、鼓励和默默支持是我能够全身心投入项目的重要动力。我还要向那些给予我帮助和支持的朋友们和同事们表达诚挚的谢意,无论是讨论技术细节还是分享开发经验,你们的参与和协助都让这个系统从一个想法逐渐变为现实。这段开发旅程不仅充满了挑战,也让我收获颇丰,这一切都离不开每一个人的支持与贡献,真心感谢你们。


参考文献

  1. 江鑫柱,骆晓琳,陈巧莉. 公立医院高质量发展背景下电子病历系统质控体系建设的探讨 [J]. 现代医院, 2025, 25 (03): 435-437.
  2. Kastuar S ,Devalaraju S ,Cifuentes G J , et al. Impact of an Electronic Medical Record Quality Improvement Intervention on Helicobacter pylori Treatment and Eradication Rates in a U.S. Hospital System. [J]. Helicobacter, 2025, 30 (2): e70034.
  3. 郭辉. 基于电子病历评级的医院信息化系统分析 [J]. 电子技术, 2025, 54 (02): 148-149.
  4. Alkotob S ,Nguyen T D ,Mehra A , et al. Removal of Food Allergy Panel Order Sets from Electronic Medical Record System at a Major Children's Hospital [J]. The Journal of Allergy and Clinical Immunology, 2025, 155 (2S): AB149-AB149.
  5. 任夏清. 基于基层医院的四级电子病历系统建设与应用研究 [J]. 电脑知识与技术, 2025, 21 (01): 82-84. DOI:10.14004/j.cnki.ckt.2025.0097.
  6. Kaplan E ,Korkmaz F . Nurses' experiences and teaching suggestions regarding electronic patient record systems: Qualitative method study [J]. Nurse Education in Practice, 2024, 81 104197-104197.
  7. 张永辉. 基于大数据技术的医院电子病历信息管理系统设计 [J]. 网络安全和信息化, 2024, (10): 101-103.
  8. 王雅枫. 电子病历在医院信息系统HIS中的应用 [J]. 电子技术, 2024, 53 (08): 272-273.
  9. 刘星楚. 电子病历系统在医院信息管理系统中的应用与实践 [J]. 电脑知识与技术, 2024, 20 (22): 127-129. DOI:10.14004/j.cnki.ckt.2024.1191.
  10. 许逸阳. 基于本体学习的电子病历知识图谱的构建[D]. 武汉工程大学, 2024. DOI:10.27727/d.cnki.gwhxc.2024.000692.
  11. 张帅. 面向电子病历的隐私保护方案设计及应用[D]. 临沂大学, 2024. DOI:10.44252/d.cnki.glydx.2024.000096.
  12. 刘彬. 基于OCR和LambdaResNet的病历分类和管理系统的研究与实现[D]. 北京交通大学, 2023. DOI:10.26944/d.cnki.gbfju.2023.000417.
  13. 冯梦迪. 基于区块链的电子病历系统的研究与实现[D]. 辽宁大学, 2023. DOI:10.27209/d.cnki.glniu.2023.002330.
  14. 张放. 基于Spring MVC的电子病历系统的设计与实现[D]. 首都经济贸易大学, 2022. DOI:10.27338/d.cnki.gsjmu.2022.000379.
  15. 李思远. 社区诊所管理云平台的设计与实现[D]. 曲阜师范大学, 2021. DOI:10.27267/d.cnki.gqfsu.2021.000762.
  16. 柏欣雨. 基于智能模板的消化内镜报告自动生成系统设计与实现[D]. 山东大学, 2021. DOI:10.27272/d.cnki.gshdu.2021.004548.
  17. 胡小勇. 基于SpringBoot的医院门诊管理信息系统的设计与实现[D]. 华中科技大学, 2021. DOI:10.27157/d.cnki.ghzku.2021.001118.
  18. 袁满. 多模式匹配算法在电子病历系统中的应用[D]. 华中师范大学, 2020. DOI:10.27159/d.cnki.ghzsu.2020.002436.
  19. 李阳. 基于云平台的电子病案系统研究与实现[D]. 西安理工大学, 2019.
  20. 张圣垚. 基于区块链的电子病历系统的设计与实现[D]. 哈尔滨工业大学, 2018.

点赞+收藏+关注  →私信领取本源代码、数据库

关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值