1、系统介绍
本课题根据前期的问卷调查以及实地考察,作出了适合实际的需求分析,采用了前后端分离的思想,后端使用了SpringBoot和SpringMVC框架,前端使用了Vue.js和ElementUI进行页面的搭建,并且使用了MySQL数据库进行数据交互。整个系统的使用者有三种角色,分别是医院管理员、患者以及医生。
以下是三种不同的角色所分别拥有的功能:
(1)管理员:可对医生信息,患者信息,挂号信息,药物信息,检查项目信息进行增删改查操作,可根据日期对医生进行排班操作,同时还可以查看数据的统计信息。
(2)患者:可以预约当天以及往后七天的挂号,可以自助缴费,完成治疗后可浏览并打印病情报告单,同时也可对就诊医生进行评分。
(3)医生:根据患者的挂号,可以诊断病因并开处方药以及检查项目,同时还有追加诊断功能,可以根据病人的病情需要申请当天入院。
论文中涉及到的资料已经为大家准备好了

2、业务描述如下:
2.1、业务流程分析
本系统的使用者一共有管理员、医生和患者这三种角色:
- 管理员:首页展示当天的预约挂号人数和住院人数,可对医生信息进行查增、批量导入和批量导出,可对患者、挂号信息进行查删,可对药物、检查项目和病床信息进行增删改查,可对医生进行排班操作,可查看数据统计页面。
- 医生:首页展示当天本人的预约挂号人数,可对患者进行诊断、开处方药、开检查项目以及追诊操作,可帮患者申请入院,可查看本人诊断的挂号信息。
- 患者:可预约挂号,可查看本人挂号信息,可查看本人住院信息,可对医生进行评价。
本系统的业务需求主要是对信息的基本管理、预约挂号和处理挂号等。
业务需求表
| 编号 | 业务名称 | 操作者 |
|---|---|---|
| 1 | 医生信息管理 | 管理员 |
| 2 | 患者信息管理 | 管理员 |
| 3 | 挂号信息管理 | 管理员 |
| 4 | 药物信息管理 | 管理员 |
| 5 | 检查项目信息管理 | 管理员 |
| 6 | 病床信息管理 | 管理员 |
| 7 | 值班安排功能 | 管理员 |
| 8 | 数据分析功能 | 管理员 |
| 9 | 预约挂号功能 | 患者 |
| 10 | 查看报告单功能 | 患者 |
| 11 | 查看住院信息功能 | 患者 |
| 12 | 诊断功能 | 医生 |
| 13 | 申请住院功能 | 医生 |
2.2、数据流程图和逻辑流程图
- 总体业务流程图如下
- 管理员查询数据通用流程图

- 医生查询和操作数据通用流程图

-
患者查询和操作数据通用流程图
-

(1) 预约挂号功能:先选择科室,会显示出该科室的所有医生信息,选择挂号日期,会显示出该天值班的医生。患者可以选择医生进行挂号,点击挂号操作后,会要求你选择时间段,同时会显示出该时间段所剩的号源,若无剩余号源,挂号失败,否则成功。

(2) 医生处理挂号功能:医生按照顺序处理挂号信息,根据患者描述的症状填写相关信息,并且可以开处方药和开检查项目。患者检查完相应项目,可拿着报告单再次向医生寻求诊断,医生可以根据报告单填写病因和开处方药。

3、数据库设计
根据数据库的概要设计,本小节设计出本系统的关系模型,其中,“主键”用下划线表示,“外键”用双下划线表示。
管理员实体(管理员ID,密码,姓名,性别,身份证号码,手机号,邮箱)
医生实体(医生ID,密码,姓名,性别,身份证号码,手机号,邮箱,职位,个人简介,所处科室,在职状态,挂号费用,评分人数,总分,平均分)
患者实体(患者ID,密码,姓名,性别,年龄,身份证号码,手机号,邮箱,患者状态,出生日期)
药物实体(药物ID,名称,单价,单位,剩余数量,提供商)
病床实体(病床ID,患者ID,医生ID,住院时间,住院原因,病床状态,乐观锁版本号)
检查项目实体(项目ID,名称,价格)
挂号信息(挂号ID,患者ID,医生ID,症状,预约时间,结束时间,所开药物,所做检查,病因,所需缴费费用,缴费状态,挂号状态)
值班信息(值班ID,值班时间,医生ID)
表5-2:admin(管理员)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| a_id | int | 主键 | 账号 |
| a_password | varchar | 密码 | |
| a_name | varchar | 姓名 | |
| a_gender | varchar | 性别 | |
| a_card | varchar | 身份证号 | |
| a_phone | varchar | 手机号 | |
| a_email | varchar | 邮箱 |
表5-3:patient(患者)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| p_id | int | 主键 | 账号 |
| p_password | varchar | 密码 | |
| p_name | varchar | 姓名 | |
| p_gender | varchar | 性别 | |
| p_birthday | varchar | 出生日期 | |
| p_age | int | 年龄 | |
| p_phone | varchar | 电话 | |
| p_card | varchar | 身份证 | |
| p_email | varchar | 邮箱 | |
| p_state | int | 状态 |
表5-4:doctor(医生)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| d_id | int | 主键 | 账号 |
| d_password | varchar | 密码 | |
| d_name | varchar | 姓名 | |
| d_gender | varchar | 性别 | |
| d_phone | varchar | 电话 | |
| d_card | varchar | 身份证 | |
| d_email | varchar | 邮箱 | |
| d_post | varchar | 职位 | |
| d_introduction | varchar | 简介 | |
| d_section | varchar | 科室 | |
| d_state | int | 状态 | |
| d_price | decimal | 挂号价格 | |
| d_people | int | 评分人数 | |
| d_star | decimal | 总分 | |
| d_avg_star | decimal | 平均分 |
表5-5:orders(挂号)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| o_id | int | 主键 | id |
| p_id | int | 外键 | 患者账号 |
| d_id | int | 外键 | 医生账号 |
| o_record | varchar | 病历 | |
| o_start | varchar | 开始时间 | |
| o_end | varchar | 结束时间 | |
| o_state | int | 状态 | |
| o_drug | varchar | 药物 | |
| o_check | varchar | 检查项目 | |
| o_total_price | decimal | 需缴费费用 | |
| o_price_state | int | 缴费状态 | |
| o_advice | varchar | 诊断及建议 |
表5-6:bed(病床)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| b_id | int | 主键 | id |
| p_id | int | 外键 | 患者账号 |
| d_id | int | 外键 | 医生账号 |
| b_state | int | 状态 | |
| b_start | varchar | 预约时间 | |
| b_reason | varchar | 申请理由 | |
| version | int | 乐观锁版本号 |
表5-7:arrange(排班)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| ar_id | int | 主键 | id |
| ar_time | varchar | 患者账号 | |
| d_id | int | 外键 | 医生 |
表5-8:drug(药物)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| dr_id | int | 主键 | id |
| dr_name | int | 名称 | |
| dr_price | int | 单价 | |
| dr_number | int | 剩余数量 | |
| dr_unit | varchar | 单位 | |
| dr_publisher | varchar | 提供商 |
表5-9:check(检查项目)
| 属性 | 类型 | 键 | 备注 |
|---|---|---|---|
| ch_id | int | 主键 | id |
| ch_name | varchar | 名称 | |
| ch_price | decimal | 价格 |
4、系统实现与界面
本章节展示了公共模块,管理员模块,医生模块以及患者模块的部分功能截图。
-
登录注册模块
登录页面,用户在浏览器中输入网址后进入到系统的登录页面,用户可以选择角色进行登录,如图所示。

注册模块,用户填写表单可以注册成患者,如图所示。

- 管理员模块
医生信息列表,管理员可以可对医生信息进行增删改查,还支持批量导入和批量导出,如图所示。

值班安排,管理员首先选择日期,接着选择科室,如图6-4所示,最后可以选择医生进行排班,如图所示。


数据统计,管理员可以在此页面中查看有关挂号,患者男女比例等数据统计,如图所示。

- 医生模块
医生可以查看当天的挂号信息,并按顺序处理,如图6-7所示;接着是处理挂号页面,医生可以根据患者的描述,填写相关症状,同时也可开处方药和开检查项目,如图所示。

申请当天入院,医生可以根据患者的实际情况,给患者安排当天入院,如图所示。

-
患者模块
预约挂号,患者先选择需要挂号的科室,如图;接着会显示该科室的所有医生信息,患者选择需要挂号的日期,会显示该天值班的医生,如图6-12;患者选择挂号时间段,若有剩余号源,即可成功挂号,如图6-13所示。



我的挂号,患者可在此页面查看我的挂号相关信息,并且可以在此页面进行缴费和查看PDF格式的报告单,如图所示。

| 点击下面的公众号Code猿,然后关注弹出的图,回复:医院管理 |
1133

被折叠的 条评论
为什么被折叠?



