摘 要
在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以,对医疗挂号信息管理的提升,也为了对医疗挂号信息进行更好的维护,医疗挂号管理系统的出现就变得水到渠成不可缺少。通过对医疗挂号管理系统的开发,不仅仅可以学以致用,让学到的知识变成成果出现,也强化了知识记忆,扩大了知识储备,是提升自我的一种很好的方法。通过具体的开发,对整个软件开发的过程熟练掌握,不论是前期的设计,还是后续的编码测试,都有了很深刻的认知。
医疗挂号管理系统通过MySQL数据库与Spring Boot框架进行开发,医疗挂号管理系统能够实现病例管理,挂号管理,挂号人员管理,划价人员管理,患者管理,门诊管理,体检管理,药品管理,医生管理等功能。
通过医疗挂号管理系统对相关信息的处理,让信息处理变的更加的系统,更加的规范,这是一个必然的结果。已经处理好的信息,不管是用来查找,还是分析,在效率上都会成倍的提高,让计算机变得更加符合生产需要,变成人们不可缺少的一种信息处理工具,实现了绿色办公,节省社会资源,为环境保护也做了力所能及的贡献。
关键字:医疗挂号管理系统,挂号,患者
第四章 系统设计
到目前为止,市面上已经存在了各种各样的软件系统,从系统的分类着手,主要应用范围倾向于办公系统,娱乐系统,社交系统,然后下面有很多比较细的分支系统。很多系统已经经过了市场的考验,针对不同的业务场景已经开始出现了业务模块化,程序员减代码化的各种设计方式。到目前为止,当要设计一个系统的时候,首先根据业务模型基本上都可以在网上找到类似的模板,然后根据具体业务具体分析,进而实现具体功能,大众的就是最好的,毕竟符合市场主流的就代表着肯定符合常规操作流程。
4.1 系统设计目标
系统设计的时候,就要制定需要达成的目标。在功能上,要严格符合设计需求,不仅仅要减少操作步骤,也要符合预期。因此,在规范化的今天设计出符合项目要求的系统,必须要达到下面设定的目标。
第一个目标就是友好性:友好性主要体现在用户使用过程中,不会对系统的操作产生一种不满,减少操作者的愤怒,这是相当重要的一个体现。前几年好多软件在这个友好性方面失去了市场,就是因为在友好性这方面没有做好。国内互联网发展初期,软件设计的目的就是能用就行,至于友好性的对比,那是不存在的,因为硬件效率比较低,计算机属于新兴行业,所以大哥不说二哥,都是不友好的。随着计算机硬件的提升,很多开发者开始注意到要牺牲一定的计算器性能来提升友好性,因为计算机发展到现在,第一印象很重要,一个软件设计的不好看,会让大部分人对其产生质疑,所以要在友好性上面下很大功夫进行雕琢。
第二个目标就是安全性:安全性其实贯穿着整个软件行业的发展史,计算机就是为解决人类重复性计算以及数据存储的目的而诞生的,很多行业都需要计算机来进行计算,减少出错几率,并且把数据保留,可以实时查询,所以数据的安全性也很重要。
只要保证数据安全性的前提,开发出符合功能需求的友好界面操作,那么就达到了系统设计的目的。
4.2功能结构设计
本系统主要是基于数据的增加,修改,删除等操作,使用者能够通过提前设定的登录功能进入指定的操作区,这里对使用者设计的功能进行结构展示。
管理员功能结构图的绘制结果见图4-1。管理员登录进入本系统操作的功能包括对挂号人员,划价人员,患者,门诊信息,体检信息,药品信息等进行管理。
图4-1 管理员功能结构图
挂号人员功能结构图的绘制结果见图4-2。挂号人员登录进入本系统操作的功能包括新增挂号信息,新增患者信息,管理挂号和患者信息,查看门诊信息,病例信息,以及药品信息等。
图4-2 挂号人员功能结构图
划价人员功能结构图的绘制结果见图4-3。划价人员登录进入本系统操作的功能包括为已划价的病例进行取药,查看体检信息,药品信息,医生信息,门诊信息等。
图4-3 划价人员功能结构图
医生功能结构图的绘制结果见图4-4。医生登录进入本系统操作的功能包括添加病例信息,管理病例信息,查看挂号信息,患者信息,体检信息,门诊信息等。
图4-4 医生功能结构图
4.3数据库设计
如果说设计系统的功能很重要,那么设计该系统的数据库将更重要,毕竟系统服务于用户,数据库服务于系统,用户访问系统,操作系统的所有数据都要依赖于数据库,而系统的数据几乎都是保存在数据库中的,所以,一个高质量的程序,必然拥有一个安全,快速响应,稳定可靠的数据库。本系统的MySQL数据库可以通过SQL语言来实现对系统数据的管理,包括在指定表中插入数据,在规定的表中更改数据,以及删除指定表中的部分数据等操作。一般来说,像MySQL这样的关系型数据库,对于结构化查询语言SQL都能很好的进行支持。在编程中,通过合理运用SQL语言便能操作数据库的各种数据,真是非常方便快捷!
4.3.1 数据库概念设计
本节内容主要是使用图形的方式来描述数据库中的实体,每个实体的相应属性,还有实体之间的相互联系,常用的Visio工具即可满足绘制E-R图的需求。E-R图是由矩形,椭圆,菱形等图形元素组成,矩形框中主要写实体的名称,椭圆框中主要是登记该实体的属性,而菱形框中主要是登记实体之间的联系名称,最后使用实心线段把这些图形元素进行连接,即可完成E-R图的绘制。当初步得到一个E-R图时,需要进行检查,使用分析的方式去修改,重构E-R图,以达到消除数据冗余,或者是消除实体间联系冗余的目的。从而保持数据库的完整性,以及降低数据库维护上面的难度。
(1)使用Visio这样的常用的实体属性图绘制工具来绘制病例实体属性图,绘制结果见图4-3。
图4-3 病例实体属性图
(2)使用Visio这样的常用的实体属性图绘制工具来绘制挂号实体属性图,绘制结果见图4-4。
图4-4 挂号实体属性图
(3)使用Visio这样的常用的实体属性图绘制工具来绘制医生实体属性图,绘制结果见图4-5。
图4-5 医生实体属性图
(4)使用Visio这样的常用的实体属性图绘制工具来绘制挂号人员实体属性图,绘制结果见图4-6。
图4-6 挂号人员实体属性图
(5)绘制的上述实体间存在的联系见图4-7。
图4-7 实体间关系E-R图
4.3.2 数据库物理设计
本系统数据在数据库中都是通过各种二维表进行记录保存的,在数据库中设计这样的二维表也是比较重要的内容,因为它影响着数据的存储效率。在设计二维表也就是关系模型之前,一些有关二维表方面的常用概念需要进行充分了解。
关系:一张具体的数据表即表示关系,关系的名称与数据表的名称保持一致;
元组:数据表中,每行显示的数据即代表元组;
属性:数据表中,每列表示的数据即代表属性;
关键字:数据表中,为了与其他数据表进行区分,则需要在每张表中进行主键的设置;
通过上节内容可以知晓数据库中的各个实体,并通过一定方式把这些实体表示的内容进行数据表的转换,通常来说,每个实体都会对应一张具体的数据表,在本系统指定的数据库中创建命名好的数据库,才可以对数据表进行创建与设计。医疗挂号管理系统数据表设计结果展示如下:
表4-1 病例表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
guahao_id | 挂号 | int(11) | 是 |
yisheng_id | 医生 | int(11) | 是 |
bingli_uuid_number | 病例编号 | varchar(200) | 是 |
zhusu_content | 患者主诉 | text | 是 |
zhenduan_content | 诊断结果 | text | 是 |
kaiyao_content | 开药详情 | text | 是 |
bingli_types | 状态 | int(11) | 是 |
insert_time | 添加时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-2 挂号表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
huanzhe_id | 患者 | int(11) | 是 |
guahaorenyuan_id | 挂号人员 | int(11) | 是 |
yisheng_id | 医生 | int(11) | 是 |
guahao_uuid_number | 号 | varchar(200) | 是 |
insert_time | 挂号时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-3 挂号人员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
guahaorenyuan_name | 挂号人员姓名 | varchar(200) | 是 |
guahaorenyuan_phone | 挂号人员手机号 | varchar(200) | 是 |
guahaorenyuan_id_number | 挂号人员身份证号 | varchar(200) | 是 |
guahaorenyuan_photo | 挂号人员头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-4 划价人员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
huajiarenyuan_name | 划价人员姓名 | varchar(200) | 是 |
huajiarenyuan_phone | 划价人员手机号 | varchar(200) | 是 |
huajiarenyuan_id_number | 划价人员身份证号 | varchar(200) | 是 |
huajiarenyuan_photo | 划价人员头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-5 患者表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
huanzhe_name | 患者姓名 | varchar(200) | 是 |
huanzhe_phone | 患者手机号 | varchar(200) | 是 |
huanzhe_id_number | 患者身份证号 | varchar(200) | 是 |
huanzhe_photo | 患者头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-6 门诊表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
yisheng_id | 医生 | int(11) | 是 |
menzhen_name | 门诊名称 | varchar(200) | 是 |
menzhen_address | 门诊位置 | varchar(200) | 是 |
xingqiji | 星期几坐诊 | varchar(200) | 是 |
qita_content | 门诊详情 | text | 是 |
insert_time | 添加详情 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-7 体检表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
yisheng_id | 医生 | int(11) | 是 |
huanzhe_id | 患者 | int(11) | 是 |
tijian_uuid_number | 体检编号 | varchar(200) | 是 |
tizhong | 体重 | varchar(200) | 是 |
shengao | 身高 | varchar(200) | 是 |
zuoyandushu | 左眼度数 | varchar(200) | 是 |
youyandushu | 右眼度数 | varchar(200) | 是 |
xinlv | 心率 | varchar(200) | 是 |
xinyin | 心音 | varchar(200) | 是 |
feibutingzhen | 肺部听诊 | varchar(200) | 是 |
ganzangtingzhen | 肝脏听诊 | varchar(200) | 是 |
xuechanggui_text | 血常规详情 | text | 是 |
niaochanggui_text | 尿常规详情 | text | 是 |
qita_text | 其他详情 | text | 是 |
insert_time | 检查时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-8 管理员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | bigint(20) | 否 |
username | 用户名 | varchar(100) | 否 |
password | 密码 | varchar(100) | 否 |
role | 角色 | varchar(100) | 是 |
addtime | 新增时间 | timestamp | 否 |
表4-9 药品表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
yaopin_uuid_number | 药品编号 | varchar(200) | 是 |
yaopin_name | 药品名称 | varchar(200) | 是 |
yaopin_photo | 药品照片 | varchar(200) | 是 |
yaopin_types | 药品类型 | int(11) | 是 |
yaopin_content | 药品介绍 | text | 是 |
insert_time | 添加时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4-10 医生表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
yisheng_name | 医生姓名 | varchar(200) | 是 |
yisheng_phone | 医生联系方式 | varchar(200) | 是 |
yisheng_photo | 医生头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
keshi_types | 科室 | int(11) | 是 |
zhiwei_types | 职位 | int(11) | 是 |
guahaofei | 挂号费 | decimal(10,2) | 是 |
create_time | 创建时间 | timestamp | 是 |
第五章 系统实现
这里主要是对系统设计实现进行描述,通过系统的设计和数据库的设计,通过编码后变成了可以进行操作的界面,让一切想法变成了结果,通过文字和具体程序操作界面的截图之间的配合,可以把功能更直观的描述起来。
5.1管理员功能实现
5.1.1 药品管理
管理员进入如图5-1所示的药品管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成药品信息的修改,删除等操作。
图5-1 药品管理界面
5.1.2 体检管理
管理员进入如图5-2所示的体检管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成体检信息的修改,删除等操作。
图5-2 体检管理界面
5.1.3 门诊管理
管理员进入如图5-3所示的门诊管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成门诊信息的修改,删除等操作。
图5-3 门诊管理界面
5.2 挂号人员功能实现
5.2.1 患者管理
挂号人员进入如图5-4所示的患者管理界面之后,挂号人员点击信息显示栏中最右侧的详情,删除按钮可依次完成患者信息的详情查看,删除等操作。挂号人员可以新增患者信息。
图5-4 患者管理界面
5.2.2 挂号管理
挂号人员进入如图5-5所示的挂号管理界面之后,挂号人员点击信息显示栏中最右侧的修改,删除按钮可依次完成挂号信息的修改,删除等操作。挂号人员需要添加挂号信息。
图5-5 挂号管理界面
5.2.3 门诊查看
挂号人员进入如图5-6所示的门诊查看界面之后,挂号人员点击信息显示栏中最右侧的详情按钮可以查看门诊详情,包括医生姓名,挂号费,门诊位置,星期几坐诊等信息。
图5-6 门诊查看界面
5.3 划价人员功能实现
5.3.1 病例管理
划价人员进入如图5-7所示的病例管理界面之后,划价人员可以查看病例详细内容,可以对已划价状态的病例进行取药操作。
图5-7 病例管理界面
5.3.2 体检查看
划价人员进入如图5-8所示的体检查看界面之后,划价人员可以查看患者的体检详情信息,包括左眼度数,肺部听诊,血常规详情等信息。
图5-8 体检查看界面
5.3.3 药品查看
划价人员进入如图5-9所示的药品查看界面之后,划价人员查看药品详情,包括药品名称,药品编号等信息。
图5-9 药品查看界面
5.4 医生功能实现
5.4.1 病例管理
医生进入如图5-10所示的病例管理界面之后,医生可以删除患者的病例信息,可以对患者的病例进行新增。
图5-10 病例管理界面
5.4.2 挂号查看
医生进入如图5-11所示的挂号查看界面之后,医生查看患者挂号费,科室,职位,挂号人员姓名,患者姓名等信息,可以查询患者挂号信息。
图5-11 挂号查看界面
5.4.3 患者查看
医生进入如图5-12所示的患者查看界面之后,医生查看患者详情,包括患者手机号,患者姓名,患者身份证号等信息,可以查询患者信息。
图5-12 患者查看界面
源码领取:
v关功纵浩 文心海资源库 回复 源码 领取