博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,博客中有上百套程序可供参考,欢迎共同交流学习。
🍅文末点击卡片获取联系🍅
技术:springboot+mysql+vue+tomcat
目录
1 系统介绍
本基于Spring Boot的中小型医院网站设计目标是实现用户网络预约挂号的功能,同时提高医院管理效率,更好的为广大用户服务。
本文重点阐述了中小型医院网站的开发过程,以实际运用为开发背景,基于Spring Boot框架,运用了Java技术和MYSQL数据库进行开发设计,充分保证系统的安全性和稳定性。本系统界面良好,操作简单方便,通过系统概述、系统分析、系统设计、数据库设计、系统测试这几个部分,详细的说明了系统的开发过程,最后并对整个开发过程进行了总结,实现了预约挂号管理、医师开药管理、药库信息管理、用户取药管理以及缴费清单管理等重要功能。
本基于Spring Boot的中小型医院网站运行效果稳定,操作方便、快捷,界面友好,是一个功能全面、实用性好、安全性高,并具有良好的可扩展性、可维护性的医院网站。
2 系统背景
2.1研究背景
随着计算机技术的成熟、普及,现代信息技术革命的迅猛发展,正冲击并进而改变着经济和社会结构。信息化的程度已经成为一个国家,一个企业,一个组织仍至一个人发展的基础和竞争成败的关键。
在实际的生活中,用户都是去医院进行就诊预约挂号,费事费力,效率低下,因此,针对用户对网上预约挂号的高需求,特开发了本基于Spring Boot的中小型医院网站。在互联网的迅速发展下,局域网的普及,为建立中小型医院网站的设计与实现提供了基础条件。中小型医院网站有着无法比拟的优点,网络共享、传播速度快的特点,用户可以随时随地进行预约挂号,取药等,同时医师可及时查看用户挂号预约信息,并可进行开药等,管理员通过计算机后台可对系统相关信息进行管理,大大提高管理的效率,更好的为广大用户服务。
2.2设计原则
在开始开发项目之前,必须要先考虑项目的实用性、科学性,以及该项目是否能够真正让用户受益并尽可能的发挥项目的作用。因此,在开发前,通过以下几条原则对项目进行判断:
(1)可行性原则。项目需要保证经济可行性和技术可行性,这包括了项目在浏览端、服务端等方面上的经济和技术上是可以达成的。
(2)适应性原则。项目要保证可维护性和可扩展性,这是每个非短期项目都需要考虑的,并且不论是维护还是扩展,都必须要建立在适应用户的正常需求的基础上。
(3)安全性及保密性原则。要充分保证用户信息的安全性和保密性,不能因为开发上的疏忽,导致用户的信息泄露。
(4)系统工程原则。为了确保项目的整体性,在项目调查、项目分析、项目设计、项目开发的过程中,都需遵从项目工程的方法和步骤逐步进行。
(5)统一规划、分期实施、逐步完善原则。项目开发的过程中,要按照规划、分期实施,特别是要注意在项目开发过程中要有条理,从点到面,一步步完善,不要贪图进度,要循环渐进的对项目进行开发。
3 系统功能结构
4 数据库结构
本基于Spring Boot的中小型医院网站需要后台数据库,本系统采用MYSQL数据库作为数据存储,下面介绍数据库中的各个表的详细信息。
表4-1 jiaofeiqingdan缴费清单信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
addtime | 创建时间 | timestamp | 否 | 是 | |
feiyongbianhao | 费用编号 | varchar | 200 | 否 | 是 |
feiyongxiangmu | 费用项目 | longtext | 否 | 是 | |
feiyongjiage | 费用价格 | int | 11 | 否 | 是 |
feiyongxiangqing | 费用详情 | longtext | 否 | 是 | |
jianmianjine | 减免金额 | int | 11 | 否 | 是 |
jianmianyuanyin | 减免原因 | longtext | 否 | 是 | |
`shifujine | 实付金额 | varchar | 200 | 否 | 是 |
zhanghao | 账号 | varchar | 200 | 否 | 是 |
xingming | 姓名 | varchar | 200 | 否 | 是 |
sfsh | 是否审核 | varchar | 200 | 否 | 是 |
`shhf` | 审核回复 | longtext | 否 | 是 | |
`ispay | 是否支付 | varchar | 200 | 否 | 是 |
表4-2 yuyueguahao预约挂号信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
addtime | 创建时间 | timestamp | 否 | 是 | |
keshibianhao | 科室编号 | varchar | 200 | 否 | 是 |
keshileixing | 科室类型 | varchar | 200 | 否 | 是 |
yishixingming | 医师姓名 | varchar | 200 | 否 | 是 |
`guahaofei | 挂号费 | varchar | 200 | 否 | 是 |
guahaoshijian | 挂号时间 | datetime | 否 | 是 | |
beizhu` | 备注 | longtext | 否 | 是 | |
shouji | 手机 | varchar | 200 | 否 | 是 |
zhanghao | 账号 | varchar | 200 | 否 | 是 |
sfsh | 是否审核 | varchar | 200 | 否 | 是 |
`shhf` | 审核回复 | longtext | 否 | 是 | |
`ispay | 是否支付 | varchar | 200 | 否 | 是 |
表4-3 yishi医师信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
addtime | 创建时间 | timestamp | 否 | 是 | |
yishigonghao | 医师工号 | varchar | 200 | 否 | 是 |
mima | 密码 | varchar | 200 | 否 | 是 |
`yishixingming` | 医师姓名 | varchar | 200 | 否 | 是 |
`xingbie | 性别 | varchar | 200 | 否 | 是 |
zhicheng` | 职称 | varchar | 200 | 否 | 是 |
shouji | 手机 | varchar | 200 | 否 | 是 |
`youxiang | 邮箱 | varchar | 200 | 否 | 是 |
shenfenzheng | 身份证 | varchar | 200 | 否 | 是 |
tupian | 图片 | varchar | 200 | 否 | 是 |
表4-4 users`管理员信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
username` | 用户名 | varchar | 100 | 否 | 是 |
password | 密码 | varchar | 100 | 否 | 是 |
role` | 角色 | varchar | 100 | 否 | 是 |
addtime | 新增时间 | timestamp | 否 | 是 |
表4-5 yonghu用户信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
addtime | 创建时间 | timestamp | 否 | 是 | |
zhanghao | 账号 | varchar | 200 | 否 | 是 |
mima | 密码 | varchar | 200 | 否 | 是 |
xingming | 姓名 | varchar | 200 | 否 | 是 |
xingbie | 性别 | varchar | 200 | 否 | 是 |
shouji` | 手机 | varchar | 200 | 否 | 是 |
youxiang | 邮箱 | varchar | 200 | 否 | 是 |
shenfenzheng | 身份证 | varchar | 200 | 否 | 是 |
表4-6 menzhenxinxi门诊信息表
字段名称 | 字段意义 | 字段类型 | 字段长度 | 是否主键 | 能否为空 |
id | 编号 | bigint | 20 | 是 | 否 |
addtime | 创建时间 | timestamp | 否 | 是 | |
keshibianhao | 科室编号 | varchar | 200 | 否 | 是 |
keshileixing | 科室类型 | varchar | 200 | 否 | 是 |
yishixingming | 医师姓名 | longtext | 否 | 是 | |
zhicheng | 职称 | varchar | 200 | 否 | 是 |
zhuanyetezhang | 专业特长 | longtext | 否 | 是 | |
guahaofei | 挂号费 | int | 11 | 否 | 是 |
xiangqing | 详情 | longtext | 否 | 是 | |
zhibanbiao | 值班表 | longtext | 否 | 是 | |
tupian | 图片 | varchar | 200 | 否 | 是 |
5 系统功能
5.1 用户功能模块的实现
用户进入本系统可查看系统信息,包括首页、门诊信息、药库信息以及系统公告信息等,系统前台主界面展示如图5-1所示。
图5-1系统前台主界面图
5.1.1用户登录界面
用户要想实现预约挂号功能,必须登录系统,在登录界面输入正确的登录账号和密码点击登录按钮进行登录,系统会对用户输入的登录信息进行验证,信息正确则登录成功,反之登录失败,用户登录界面展示如图5-2所示。
图5-2 用户登录界面图
5.1.2用户注册界面
没有账号的用户可进行注册操作,用户注册界面展示如图5-3所示。
图5-3 用户注册界面图
5.1.3门诊信息详情界面
用户可选择门诊查看详情信息,登录后可进行预约挂号操作,门诊信息详情界面展示如图5-4所示。
图5-4 门诊信息详情界面图
5.1.4预约挂号界面
用户在预约挂号时需要填写相关数据,预约挂号界面展示如图5-5所示。
图5-5 预约挂号界面图
5.1.5药品详情界面
用户可选择药品查看详情信息,登录后可进行取药操作,药品详情展示如图5-6所示。
图5-6 药品详情界面图
5.1.6体检报告界面
用户可查看个人体检报告信息,体检报告界面展示如图5-7所示。
图5-7 体检报告界面图
5.2 管理员功能模块的实现
5.2.1管理员登录界面
管理员要想进入系统后台对系统进行管理操作,必须登录系统后台,管理员登录界面展示如图5-8所示。
图5-8 管理员登录界面图
5.2.2用户管理界面
管理员可增删改查用户信息,用户管理界面展示如图5-9所示。
图5-9 用户管理界面图
5.2.3医师管理界面
管理员可查看医师信息,并可对其进行修改和删除操作,同时也可添加医师信息,医师管理界面展示如图5-10所示。
图5-10 医师管理界面图
5.2.4科室类型管理界面
管理员可增删改查科室类型信息,科室类型管理界面展示如图5-11所示。
图5-11 科室类型管理界面图
5.2.5门诊信息管理界面
管理员可查看所有门诊信息,并可对其进行修改和删除操作,也可添加门诊信息,门诊信息管理界面展示如图5-12所示。
图5-12 门诊信息管理界面图
5.2.6药库信息管理界面
管理员能够增删改查药库信息,药库信息管理界面展示如图5-13所示。
图5-13 药库信息管理界面图
5.3 医师功能模块的实现
5.3.1预约挂号管理界面
医师登录后可查看用户预约挂号信息,并可对其进审核和查看结果操作,预约挂号管理界面展示如图5-14所示。
图5-14 预约挂号管理界面图
5.3.2体检报告管理界面
医师可增删改查体检报告信息,并可进行添加药方信息,体检报告管理界面展示如图5-15所示。
图5-15 体检报告管理界面图
6 系统测试
6.1 测试定义
系统测试主要是判断系统是否可以正常运行,功能模块是否可以实现操作。程序代码中是否有错误出现。测试程序是开发过程中的一个主要问题。就算系统完成的再好,再进行程序测试时也会也会发现一个重来没有被发现的错误信息。
测试不仅是系统开发的开始,而且应该贯穿整个系统的整个生命周期。评估系统质量的方法不局限于系统编码和过程,应该与软件设计工作和历史需求分析密切相关。系统错误,不一定是代码错误,可能是阶段的设计摘要和设计细节存在问题,问题也可能出现在需求分析阶段。从实际情况来看,最初的问题很可能是一个小错误,根据按钮的原理,按钮后的按钮位错将是所有位错。该系统的原因也同样适用,随着后续的开发工作,误差将越来越严重。所以越早发现问题,更好的将是解决问题的早期阶段,为了避免问题在后续编码,测试和设计,避免扩大国家的问题。在测试系统中,开发人员应该站在客户的角度来处理测试工作,而现在主要的测试方法是黑盒测试。测试的目的可以概括为以下几点:首先,用户界面和客户需求是一致的,设置界面和设计风格统一;第二,创新设计接口规范设计标准,具有独特的审美特征;最后,人类传统的接口以满足审美需求,不能盲目地追求一种独特的,合理的规划布局,符合审美标准。
6.2 测试方式
总体程序测试的话,通常有两种测试方式,白盒的测试和黑盒的测试。
白盒的测试方式:总的来说就是以程序内部逻辑结构为依据而用来进行设计测试用例的方式
黑盒的测试方式:总的说来黑盒的测试会有这么几个方法方式:同等价值的一个分类方式、对于系统的一个边界数值的一个分析方式、对与错的一个猜想方式、还有最后一种就是图什么样的图,称之为因果图的方式。
整个的系统测试包括了最为重点的两种方式,从而“保障了系统测试的用例完全性和效果性”的一个原则。进行测试总体而言就是要检查功能齐全、是否能够接收信息或输送信息、数据的结构、性能需求是否到位、是否能够正确的初始化和终止。
6.3 测试方案
对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性,以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试。
构造测试是白盒测试的另一个名字,了解与分析程序的结构以及性能功用的,从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。
性能测试是黑盒测试别称,程序本身的运作通过程序的进程来观察,主要是看一下程序是不是能够像我们预期的目标那样发展,看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据,到最后看一下我们的这个程序完整性能不能达到要求。
(1)模块测试
单元测试就是模块测试,顾名思义就是测试每个模块所承担的功能是否能够实现,这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差,很好地改正这些错误,就说明我们模块测试进行很成功过。
(2)集成测试:
集成测试就是对系统的测试以及对他子系统的一些性能测试,他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点:
软件耗费较少。
可以提前发现端口的错误。
更好的地位系统中错误的位置。
从底部往上面进行的方案针对于偏下层的结构,而中间的结构就采用折中的方法。
(3)验收测试:
终于到了结尾性的工作了。就是为了给用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。
其结果是分别是:
有一定的差异在用户的需求。
再者就是结果与之差不了多少。
到了最后了,我们发现的问题都是与用户的需求存在一定的关联。
6.4 测试分析
经过对总体测试分析,本基于Spring Boot的中小型医院网站运行时均能执行其相应功能,均能实现查看、添加、删除、编辑等功能,且运行显示正常,后台数据库也运行良好,数据保证了一致性和稳定性,各个功能模块运行正常达到了预期的开发目标。
总体说来,软件通过测试。
7 总结
本次开发的基于Spring Boot的中小型医院网站已经接近尾声阶段了,在这次独立完成毕业设计的期间,我自己体会到了很多的东西,另外我很想说的就是独立开发软件真的很能让人在开发期间得到锻炼,不管是需求分析,还是系统的设计以及系统功能详细实现还有最后的测试工作,每一步都要小心翼翼的完成,一步一步来,不然任何环节出现了差错,返工起来也很麻烦,开发系统过程中,遇到了很多的难题,比如基于Spring Boot的中小型医院网站需要具有什么样的功能,这个我还是思考了很久,后来同学给我提示了一下,参考别人做好的系统,看看人家设计了什么功能,自己就多多参考下,后来这个问题就很好解决了,最难的就是系统编码了,我这个人本来就比较粗心,编码出现很多不该出现的错误,不该打空格也不小心键盘空格键多敲了两下,整得自己老是程序运行出错,找了好久都没有解决,后来无奈找到室友帮忙看看,慢慢检查终于找到问题了,编码过程真的很心塞。还好东拼西凑总算完成了功能要求了。系统整体界面虽然不是很好看,但起码不花哨,用户使用起来整体感觉就是简洁,功能体验虽然有点啰嗦,但是需要的功能都已经具备了。
自己的身份目前还是学生,开发程序肯定是不会考虑周全,程序完成开发后也经过了一系列测试,整体来说还是没有发现明显的操作逻辑错误,自己在毕设制作过程中不仅知识有所增加,独立学习的能力也有所提高了,更重要的就是遇到问题向周边同学寻求帮助,这个是很有必要的。总的来说毕业设计的圆满完成,我真的觉得很自豪。