版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE2S社区医院预约挂号管理系统设计与实现摘要目前,传统的医院预约挂号正在逐渐被公平高效的网上预约挂号所代替,我国目前医院排队挂号依旧是主流,导致医院效率低、医务人员工作强度大,患者就医体验差等糟糕情况。为了提高医院效率同时改善老百姓的就医体验,党中央不断下发官方文件,要求加快实现综合挂号平台建设,逐步实现平台与国家数据共享交换平台的对接,争取早日实现现代化医疗目标。“S社区医院预约挂号管理系统”正是在此背景下诞生,本文围绕以互联网技术打造一项惠民便民的预约挂号综合平台。系统包括Web用户端、Web管理员端、后台、系统服务组件四部分,Web用户端和Web管理员端采用Vue、Axios、Node和ElementUI等技术开发,后台采用SpringBoot、SpringCloud和MP框架,系统服务组件采用Nignx、Nacos、Docker。关键词:互联网;健康医疗;平台建设目录TOC\o"1-2"\h\u30407摘要 II130001绪论101551.1目的和意义 (1)306041.2背景及国内外现状 (1)290321.3研究的内容 (3)39991.4论文结构 (4)259731.5本章小结 (4)310842需求分析185092.1可行性分析 (5)66052.2功能需求分析 (7)39922.3业务流程分析 (10)167082.4非功能性需求分析 (12)156892.5本章小结 (13)306053概要设计229053.1系统总体设计 (14)282883.2系统功能模块划分 (15)307723.3数据库设计 (17)218023.4本章小结 (31)48054详细设计与实现216134.1开发及运行环境描述 (32)307804.2实名认证模块 (32)25374.3挂号订单模块 (33)305314.4就诊人管理模块 (34)151104.5注册登录模块 (35)131814.6用户管理模块 (36)23754.7数据管理模块 (37)273994.8医院管理模块 (38)313244.9订单管理模块 (39)217144.10统计管理模块 (40)311074.11医院设置模块 (41)181534.12科室排班管理模块 (42)259154.13本章小结 (43)30505系统测试49565.1测试目的 (44)187415.2功能性测试 (44)181865.3非功能性测试 (50)91185.4本章小结 (50)120606总结与展望324206.1总结 (51)309636.2展望 (51)8917参考文献 (54)PAGE21绪论本章是决定项目开发意义的重要一环,研究项目的来源与背景,探讨项目的意义,描绘出项目研究内容与方向的大致轮廓,制定相应的计划去完成项目。1.1目的和意义方便群众就医,减少就医排队时间,优化医院的就医流程,使医院资源调控更加合理,让医院服务质量更好REF_Ref91615032\r\h[1]。同时让病人可以根据自己的时间去选择就医,使就医时间时间更加灵活。医院使用网上预约挂号系统,可以帮助患者很方便的挂到号,提升医院服务能力,使医院的资源调控更加合理,降低医疗安全风险REF_Ref32636\r\h[2REF_Ref642\r\h,3]。为了规范和推动预约挂号服务,党中央下达了相关文件,指示相关医院要实行预约服务,同时,也要培养医务人员相关服务技能,优化医院管理制度,努力打造更加完善的模式REF_Ref22443\r\h[5REF_Ref22466\r\h,6]。1.2背景及国内外现状当前,疫情逐渐常态化,在面对医院患者日益增长的同时医院资源分配不均和医疗资源比较紧张等诸多问题也越发严重,选择一个有效的方法来解决此问题变得极为迫切。其中大型医院挂号难是一个突出问题REF_Ref25254\r\h[7REF_Ref14296\r\h,8]。此外,在全面小康的背景下,老百姓对身体健康的重视程度越来越高,也对医院的医疗服务质量和就诊体验有了更高的要求。目前,在一些经济落后地区的甲级医院和大量小医院在处理业务时依旧采用传统方式,并没有通过互联网技术来提高效率,导致医务人员和医院效率较低,同时患者经常面临花费大量时间浪费在排队挂号的等待上,而真正有效的就诊时间就几分钟[5]。据2016-2020年网上医院预约调查报告资料显示,在一千多人的受访者中,有超过88%的人觉得去医院看病很难,其中最难的就是预约挂号,有超过31.7%的被访者对医院效率低和挂号排队时间长最不满意REF_Ref17767\r\h[9]。在国内,人们对身体健康的重视程度越来越高,面对越来越多的医疗需求,以目前的公共医疗资源很难应对REF_Ref5005\r\h[9]。为了解决这些民生问题,中央在2015下发的官方文件明确指出,各级医院要服从中央指示,要自我优化,以互联网为基础结合科技力量对医疗服务质量进行从下向上的变更,稳步推进预约挂号服务和产业的全面实现。在国外,特别是欧美发达国家,由于他们发展的比较早,使他们拥有了比较先进的医疗系统,通常患者会有意识地提前和医生沟通,约定就医时间,很少会存在挂号难、白跑一趟的问题。通常情况下,他们的大医院不会接受普通患者预约,只会对重症病人进行治疗,所以他们医院的效率才会很高。1.3研究的内容论文首先以网上预约挂号平台的市场需求研究背景,确定了网上预约挂号管理系统致力于的主要目标和对现实社会的两个重要意义,一是,帮助医院高效率的管理医药的预约挂号数据,并减轻医务人员的工作压力;二是,帮助患者在节省时间和金钱的同时提高就医体验。其次结合市场环境对网上预约挂号平台的现状进行了网上资料调查。在系统开发的过程当中,我主要对系统需求分析、概要计、详细设计与实现以及系统测试等各个环节做仔细的设计实现。除此之外,我对项目的技术选型进行了挑选并对项目涉及到的业务、流程、角色功能等都做了仔细地分析。论文主要内容结构包括:首先,基于系统业务以及结构分析,分析系统中涉及到的角色以及不同角色所拥有的功能;其次,根据系统的需求梳理出系统的现实场景,结合微服务的思想设计了系统架构和功能模块;然后,根据设计模块使用流程图和时序图;最后,对所有模块进行功能性测试和非功能性模块进行现实场景分析测试,并给出测试用例。1.4论文结构论文的内容结构共有六章,论文主要分析了S社区医院预约挂号管理系统在不同阶段各个章节的设计、分析与实现,具体结构如下:第一章:通过数据说明课题对国家和个人的意义,明确课题内容和结构。第二章:对课题所涉及的各个需求进行展开分析。第三章:分析整个系统的各个模块以及数据库的整体设计第四章:简要概述系统环境和开发技术,并分析各个模块的具体实现。第五章:对系统的各个功能模块和整体的稳定性、可靠性进行系统性的测试。第六章:回顾整个项目的开发历程,总结开发过程的问题和收获。1.5本章小结为了解决看病难、挂号难的就医难题,本章结合国内外的挂号就医情况对比,采用系统性分析方法,分析了目前我国现阶段看病就医存在的问题并通过对比国外先进高效的做法,结合自己的观点,提出了切实可行的解决办法。
2需求分析需求分析是整个项目能否进行下一步的基础,一个合格的需求分析应当包含以下三个部分:可行性分析、功能需求分析和业务流程分析,每个分析都要围绕需求的主题展开,并切实地给出分析结论。2.1可行性分析在项目的研究内容和方向确定之后,首先要进行的就是可行性分析,在分析的过程中,我们要结合实际情况和真实数据分析而不能凭自己的主观猜想分析,在分析了所有的可行性之后,我们应当总结判断每一项的可行性是否真正可行。除此之外,我们还应当分析此过程中的问题以及给出可行的解决方案,再从可行的方案中挑选出一个最符合同时也是最可行的方案。通常,从经济、技术和市场三个角度对系统开发可行性进行研究分析。下面我将从这三个角度对可行性展开分析。2.1.1经济可行性开发该系统所使用的开发软件,都是可以到相关网站免费下载到的如Xshell、Navicat、IDEA、WebStorm、Mysql及JDK等,除了在搭建微服务的运行和维护环境上需要一台服务器以及短信服务外没有其他经济方面的支出,因此不存在经济负担过重的问题,所以从经济方面考虑开发该系统是可行的。2.1.2技术可行性通过在大学期间专业系统学习和几个项目的实践操作,在技术层面上已经有足够多的经验。从现有的计算机软件、硬件资源方面看,也是可以满足系统在数据处理、运算速度等方面的开发需求。开发该系统所采用的开发技术有Java、Vue、ElementUI、Mysql、SpringBoot、SpringCloud等。所以从技术方面考虑技术是可行的。2.1.3市场可行性分析市场可行性我将从两个方面进行调研和数据分析,其一是,中国目前互联网网民的数量,这是网上预约挂号系统是否可行的必要条件;其二是,中国平均每个月的患者就诊人数,这关系到网上预约挂号的需求量和发展前景。下面我将根据以上两点通过两组数据来分析网上预约挂号的市场可行性。其一,根据网信办的互联网发展报告显示,目前中国网民数量超十亿,达10.11亿人REF_Ref5820\r\h[10]。其二,根据国家卫健委统计信息中心在官网发布了的《2021年4月全国医疗服务情况》分析报告显示,2021年4月,全国共计5.3亿人次就诊。从以上两组数据不难看出,中国拥有10亿级别的互联网用户群体且每月就诊人数平均在4至5亿人次左右,面对如此庞大的就诊人数,如何有效的解决医院的压力以及有条不紊的安排诊断变得至关重要。在此背景下,网上预约挂号无疑有着巨大的优势以及发展潜力。基于中国拥有12多亿智能移动手机用户和每月平均几亿的就医人数,我认为市场是可行的。2.2功能需求分析平台用户:(1)医院信息展示:挂号平台需要对医院的详细信息进行介绍并对科室、排班进行信息展示,其中科室信息展示需要展示科室的具体信息让患者能够清晰的知道不同科室的详细情况;排班介绍需要向患者展示医院的近期对应科室的排班安排、坐诊的医师以及挂号容量等信息。通过医院信息展示减低系统使用的复杂度同时减少用户不必要的操作错误。(2)用户就诊人管理:对于已经登陆的用户,用户可以添加就诊人,此外,可以对需要修改的就诊人进行信息修改或者删除就诊人。(3)在线挂号:用户在挂号平台选择需要挂号的医院和科室,在挂号页面,用户可以清晰的看到医院的排班信息,并对需要挂号的时间进行选择,挂号成功之后,用户可收到挂号成功的短信通知。(4)查询与取消预约:用户在挂号平台成功挂号之后,用户可以查看自的挂号订单的详细信息。查询到挂号订单之后,用户可以根据需要选择是否进行取消挂号操作,取消之后用户将收到取消挂号的短信通知。用户用例图如图2-1所示。图2-1用户用例图平台管理员:(1)用户管理:这个模块分为两个部分:一是用户的账号管理,二是用户的实名认证管理,由于系统的只提供了手机短信登录和微信授权登录两种登陆模式没有提供注册功能,当用户使用手机短信验证登录时,系统会创建一个用户账号并将该手机号绑定用户账号并以此作为后续挂号通知的手段,如果用户选择微信授权登录,系统则会在创建一个用户账号的同时获取扫码人的微信信息并判断其中是否存在用户手机信息,如果没有则跳转到手机短信绑定界面,通过以上两种判断方式确保用户账号可以和手机号绑定。在完成以上操作后,用户还需要进行实名认证,方式有两种,分别是身份证和户口本认证,认证成功后用户才能真正进行预约挂号操作。(2)数据管理:这个模块只有一个数据字典功能部分,主要是对全国的各个省、市、县等地级信息、医院等级、证件类型、学历、民族等系统需要使用的一些全局公有属性数据进行管理,主要的操作功能有:查看数据、导入数据和导出数据。(3)医院管理:这个模块功能主要是对医院设置和医院列表进行管理,其中医院设置可以查看医院的部分信息、对医院的可使用状态进行锁定和取消锁定操作,通过医院名称和医院编号进行条件查询,通过医院的id删除或者通过医院的id数组进行批量删除。(4)订单管理:订单管理模块可以对所有的用户订单进行统一管理,其中可以根据用户的id查询这个用户的所有订单数据,也可通过点击订单查看订单的详细信息。(5)统计管理:对系统的订单和医院等做数据上的统计分析,通过echarts图表表现。管理员用例图如图2-2所示。图2-2管理员用例图医院对接人:(1)医院设置:需要医院对接人员在医院设置页面填写医院编号code、平台签发的签名密钥key和统一预约挂号平台基础路径这三个平台对接的必要信息,只有填写了以上三个信息,医院才能真正向平台上传医院的相关数据。;(2)医院管理:在医院对接人员登录医院医院管理平台并正确填写医院设置信息之后,对接人员需要上传医院的基本价绍信息,其中包括医院基本介绍和医院预约挂号好规则,只有上传了这些信息,用户才能对医院有清晰的了解,才能正确的进行挂号。此外对于医院以后需要变更医院基本信息要拥有数据变更的操作功能。(3)科室列表:在医院对接人员登录医院管理平台之后,对接人员需要按时上传医院的全部科室的相关信息,保证挂号平台可以进行医院科室展示,同时科室列表中必须拥有科室操作的功能,保证医院可以随时对科室进行操作。(4)排班列表:在医院对接人员登录医院管理平台之后,对接人员需要按时上传医院的全部排班的相关信息,确保用户能够即使根据医院排版进行医院的预约挂号,同时排班列表中必须拥有排班操作的功能,保证医院可以随时对排班进行相应的操作。医院对接人员用例图如图2-3所示。图2-3医院人员用例图2.3业务流程分析本项目的主要目标是针对那些有预约挂号需求的用户,整个系统的业务流程可分为,登录、实名认证、添加就诊人、选择医院挂号、支付、短信通知。预约挂号的业务流程如下。用户选择手机短信验证登录或者微信授权登录,如果选择手机短信登录系统会创建一个用户账号并将该手机号绑定用户账号并以此作为后续挂号通知的手段,如果用户选择微信授权登录,系统则会在创建一个用户账号的同时获取扫码人的微信信息并判断其中是否存在用户手机信息,如果没有则跳转到手机短信绑定界面,在完成以上操作后,用户还需要进行实名认证,方式有两种,分别是身份证和户口本认证,用户提交认证后,系统管理员会对认证进行审核,当审核通过之后,用户选择需要的医院、科室、时间进行挂号,挂号成功后用户将收到短信提示。预约挂号业务流程图如图2-1所示。图2-1预约挂号业务流程图医院平台对接业务流程图如图2-2所示。图2-2医院平台对接业务流程图查询与取消预约业务流程图如图2-3所示图2-3用户取消预约业务流程图2.4非功能性需求分析对界面多端适配需求、易用好扩展需求、稳定安全需求等方面进行考虑,以下是具体的分析:(1)界面多端适配性。用户在使用挂号平台的过程当中可能使用不同的操作设备,不同的浏览器。面临这种情况系统要具备多环境适应性,让其在不同的终端上任然拥有理想的界面展示。(2)稳定安全性:生产环境中,系统通常都是24小时不间断运行并有可能面临高并发状况,同时也可能随时遭遇不法分子的网络攻击,所以在面对这些问题时,要求系统必须具备在高并发的情况下保持高可用,在面对大量用户同时访问时能够保持稳定的运行,同时能够24小时不间断的提供服务、具备抵御SQL注入、DOS攻击、XSS攻击等网络攻击手段。(3)易用扩展性:包括界面的美观性,要求系统要简洁大方、容易理解,同时平台的使用要符合我们日常习惯的操作方式;和在面对未来变更业务或者添加新业务时可以轻松的在原有的基础上进行扩展操作和修改同时不影响其他无关业务。2.5本章小结本章对系统作了全面的需求分析,首先从三个不同角度分别分析可行性。在可行性成立的基础上再从系统深层次分析各个需求,保证自己对系统的整体有足够详细的认识。
3概要设计概要设计是把用户目标与需求转换成具体界面解决方案的重要阶段,其任务是建立目标系统的总体结构和模块之间的关系,定义并控制各功能模块的接口,并逐步实现设计目标。3.1系统总体设计根据项目的开发需求和设计标准,系统采用分布式微服务架构,使用SpringBoot和SpringCloud框架来构建整个系统的骨架,采用Nginx负载均衡器和SpringCloudGateway网关来实现系统入口的负载均衡,同时为了解决系统所有模块的服务治理和每个模块的在负载均衡前提下并发量过的问题,系统引入SpringCloudAlibaba相关组件Nacos和Sentinel,通过Nacos注册和配置中心实现服务注册与发现并通过可视化的界面随时查看系统所有服务的运行状态并可以控制服务的上线和下线,而Sentinel则实现了服务的熔断降级和限流;除此之外,系统采用redis作为系统的缓存,以此来减轻Mysql数据库的访问压力,同时使用Mongodb作为系统数据库的扩展数据库,以Mongodb的高性能来解决前端页面经常查询的数据的访问压力。使用微服务解决了SSM单体应用框架的高内聚性,将系统进行多个不同模块的划分,每个模块相互独立,每个模块之间通过RPC远程调用相互协作完成整个系统的各个功能,这样让系统的各个模块耦合度大大降低,系统整体架构如图3-1所示。图3-1系统总体架构图3.2系统功能模块划分通过对S社区医院预约挂号管理系统的所有业务和涉及的人员进行分析,我将整个系统分为用户前端挂号平台、系统后台管理平台、医院后台管理平台这三大主模块,其中每个主模块下有多个不同子功能模块。具体的系统总体功能结构如图3-2所示。用户前端挂号平台包含四个子功能模块分别是:(1)注册登录模块:新用户可以通过手机号或者微信扫码注册的同时登录挂号平台。(2)实名认证模块:登录成功之后,用户必须选择身份证或者户口本进行实名认证才能挂号。(3)挂号订单模块:用户挂号成功之后可以在挂号订单模块里查看到自己的所有挂号订单。(4)就诊人管理:用户可以自行添加就诊人并为添加的就诊人挂号。系统后台管理平台包含五个功能模块分别是:(1)用户管理模块:平台管理员可以对用户管理模块下的用户列表和认真审核列表进行相应的数据操作,包括查看用户信息、同意认证、锁定用户等操作。(2)数据管理模块:平台管理员可以对数据管理模块下的字典列表进行导入数据、导出数据、查看数据等相关操作。(3)医院管理模块:平台管理员可以对医院管理模块下的医院列表、医院设置进行进行医院信息查看、医院锁定、排班查看、医院设置删除等等相关操作。(4)订单管理模块:平台管理员可以对订单管理模块下的订单列表进行订单查看、订单搜索等相关数据操作。(5)统计管理模块:平台管理员可以对统计管理模块下的预约订单统计图图表进行查看操作。医院后台管理平台包含四个功能模块分别是:(1)医院设置模块:医院对接人员可以在医院设置模块下对医院编号code、医院签名key、接入地址进行数据操作。(2)医院管理模块:医院对接人员可以在医院管理模块下医院基本信息、医院排班规则进行更改、查看、上传等相关操作。(3)科室列表模块:医院对接人员可以在科室列表模块下进行科室数据上传、科室信息查看等相关操作。(4)排班列表模块:医院对接人员可以在排班列表模块下进行排班数据上传、排班信息查看等相关操作。图3-2系统总体功能模块图3.3数据库设计在我们计数据库的过程中还应当遵循规范的数据库设计标准,其中第三范式是目前使用最多同时也是最优的选择,它可以很好的解决数据重复问题并减轻了数据库的存储压力[16]。所以,本项目数据库在设计时遵循了次设计规范,使得数据库可以在减低冗余的同时实现数据库整体性能的提升。在数据库表属性字段类型的选择方面,我们要结合字段的实际使用出发,尽可能的使用节省资源的数据类型,通过优先选择内存占用小的数据类型,从而达到节省服务资源。此外对于经常进行查询操作的字段,我们应该优先考虑为其建立索引,通过索引提高数据库的查询性能,让数据库发挥最大效率。3.3.1概念设计数据库概念设计将决定数据库的主导,通过建立概念和逻辑模型对数据库有一个总体的认识,根据数据库的设计策略将采用自底向上的方法先定义各局部应用的概念结构E-R图,然后形成全局结构E-R模型。系统用户E-R图如图3-3所示。图3-3系统用户E-R图数据管理局部E-R图如图3-4所示。图3-4数据管理局部E-R图医院管理局部E-R图如图3-5所示。图3-5医院管理局部E-R图订单管理局部E-R图如图3-6所示图3-6订单管理局部E-R图统计管理局部E-R图如图3-7所示图3-7统计管理局部E-R图医院设置局部E-R图如图3-8所示图3-8医院设置局部E-R图医院管理局部E-R图如图3-9所示图3-9医院管理局部E-R图科室列表局部E-R图如图3-10所示图3-10科室列表局部E-R图排班列表局部E-R图如图3-11所示图3-11排班列表局部E-R图系统总体E-R图如图3-12所示。图3-12总体E-R图3.3.2逻辑设计数据表的描述如下所示。(1)就诊人表(编号,用户id,姓名,证件类型,证件编号,性别,出生年月,手机,省code,市code,区code,详情地址,状态)。(2)用户表(编号,微信openid,昵称,手机号,用户姓名,证件类型,认证状态,状态)。(3)用户登陆记录表(编号,用户id,ip)。(4)医院设置表(编号,医院名称,医院编号,ap基础路径,签名密钥,联系人,联系人手机,状态)。(5)数据字典表(编号,上级id,名称,值,编码)。(6)订单信息表(编号,用户id,订单交易号,医院编号,医院名称,科室编号,医生职称,排班编号,安排日期,安排时间,就诊人id,就诊人名称,就诊人手机,订单状态)。(7)支付信息表(编号,对外业务编号,订单id,支付类型,交易编号,支付金额,支付内容,支付状态)。(8)退款信息表(编号,对外业务编号,订单编号,支付类型,交易编号,退款金额,退款状态)。(9)医院表(编号,医院编号,医院名称,医院类型,省编号,市编号,区域编号,医院logo,医院介绍)。(10)科室表(编号,医院编号,科室编号,科室名称,科室介绍,上级编号,上级名称)(11)排班表(编号,医院编号,科室编号,医生类型,医生姓名预约容量,可预约数,预约金额,状态)。3.3.3物理设计数据库的物理设计关系到数据库的复杂程度以及性能,是数据库设计中最关键的一步。预约挂号管理系统数据库由MySQL关系型数据库进行设计,使用了Navicat对数据库进行操作管理。其11张表结构如所示。就诊人表结构如表3-13所示。表3-1patient表结构字段数据类型长度主键/外键备注idbigint主键编号,自增user_idbigint用户idnamevarchar20姓名certificates_typevarchar3证件类型certificates_novarchar30证件编号sexvarchar性别birthdatedate出生年月phonevarchar11手机province_codevarchar20省codecity_codevarchar20市codedistrct_codevarchar20区codeaddressvarchar100详细地址contacts_namevarchar20联系人姓名contacts_phonevarchar11联系人手机statustinyint状态(0:默认,1:已认证)(2)用户信息表结构如表3-14所示 表3-14user_info表结构字段数据类型长度主键/外键备注idbigint主键编号,自增openidvarchar100微信openidnick_namevarchar20昵称phonevarchar100手机号namevarchar50用户姓名certificates_typevarchar3证件类型statustinyint认证状态auth_statustinyint状态(0:锁定,1:状态)(3)用户登陆记录表结构如表3-15所示 表3-15user_info_record表结构字段数据类型长度主键/外键备注idbigint主键编号,自增useridvarchar100微信openidnick_namevarchar20昵称ipvarchar100手机号(4)医院设置表结构如表3-16所示表3-16hospital_set表结构字段数据类型长度主键/外键备注idbigint主键编号,自增hosnamevarchar100医院名称hoscodevarchar30医院编号api_urlvarchar100Api基础路径sign_keyvarchar50签名密钥contacts_namevarchar20联系人contacts_phonevarchar11联系人电话statustinyint状态(5)订单信息表结构如表3-17所示 表3-17order_info表结构字段数据类型长度主键/外键备注idbigint主键编号,自增useridvarchar100用户idout_trade_novarchar20订单编号hoscodevarchar100医院编号hosnamevarchar50医院名称depnamevarchar3科室名称titlevarchar30医生职称hos_schedule_idvarchar200排班编号reserve_datetinyint安排日期reserve_timetinyint安排时间patient_idtimetamp就诊人idpatient_nametimetamp20就诊人名称patient_phonetinyint11就诊人手机order_statustinyint订单状态(6)支付信息表结构如表3-18所示 表3-18payment_info表结构字段数据类型长度主键/外键备注idbigint主键编号,自增out_trade_novarchar30对外业务编号order_idvarchar订单idpayment_typevarchar1支付类型trade_novarchar50交易编号total_amountvarchar10支付金额subjectvarchar200交易内容payment_statusvarchar支付状态(7)退款信息表结构如表3-19所示 表3-19refund_info表结构字段数据类型长度主键/外键备注idbigint主键编号,自增uut_trade_novarchar30对外业务编号order_idvarchar订单idpayment_typevarchar1支付类型Trade_novarchar50交易编号total_amountvarchar10支付金额refund_statusvarchar30退款状态(8)数据字典表结构如表3-20所示。表3-20dict表结构字段数据类型长度主键/外键备注idbigint主键编号,自增parent_idbigint上级idnamevarchar100名称valuebigint值dict_codevarchar20编码(9)医院信息表结构如表3-21所示 表3-21hospital表结构字段数据类型长度主键/外键备注idbigint主键编号,自增hoscodevarchar100医院编号hosnamevarchar50医院名称hostypevarchar10医院类型provinceCodevarchar3省编号cityCodevarchar30市编号districtCodevarchar200区编号logoDatatinyint医院logointrotimetamp医院介绍(10)科室表结构如表3-22所示 表3-22department表结构字段数据类型长度主键/外键备注idbigint主键编号,自增hoscodevarchar100医院编号depcodevarchar50科室编号depnamevarchar10科室名称introvarchar20科室介绍bigcodevarchar20上级编号bignamevarchar20上级名称(11)排班表结构如表3-23所示 表3-23schedule表结构字段数据类型长度主键/外键备注idbigint主键编号,自增hoscodevarchar100医院编号depcodevarchar50科室编号titlevarchar10医生类型decnamevarchar10医生姓名availableNumberint可预约数amountint20预约金额statustinyint状态3.3.4数据库性能优化数据库性能优化时间漫长且需要实际验证,这其中涉及且需要我们考虑的因素很多,目前市面上的数据库类型有比较的多,不同数据库的优化所涉及的东西也并不相同,所以我们只能针对性的对经常用的数据库做细致的性能优化REF_Ref12343\r\h[10REF_Ref12356\r\h,11]。下面我就以mysql数据库作为对象进行性能优化探讨。数据库的查询操作在所有操作中占超50%以上,查询的响应时间将直接决定数据库性能的强弱。除此之外,计算机的硬盘以及内存也对数据库的性能有较大影响,硬盘和内存条越好的机器就越能发挥数据库的性能。在实际的生产环境中,面临海量的数据存储,一个数据库和一张表的存储量和性能是有限的,其性能会随数据增加将线性递减。为了解决以上数据库性能优化问题。我们可以从以下几点考虑:1、开启查询缓存,优化查询;2、当只要一行数据时使用limit1;3、为搜索字段建索;4、根据业务数据量的大小选择分库分表3.4本章小结主要描述系统的总体设计,分别从系统的整体布局和系统的各个模块的划分进行了概要阐述,同时对数据库的不同层级的设计做出了E-R图流程展示,
4详细设计与实现详细设计需要实现设计的所有细节,包括系统开发、运行环境描述、系统模块的详细实现和通过画出流程图为每一个模块确定使用的步骤,画出时序图确定程序之间相互依赖关系。4.1开发及运行环境描述系统的开发使用联想小新电脑,运行环境中前端使用Vue和ElementUI,运行于Node12上,后端使用微服务,运行于JDK1.8上,依赖管理工具使用Maven3.6.3。其它系统依赖组件则部署在云服务器上的Docker容器中。4.2实名认证模块流程图如下图4-1所示图4-1实名认证模块功能流程图时序图如下图4-2所示图4-2实名认证模块时序图4.3挂号订单模块流程图如下图4-3所示图4-3挂号订单模块功能流程图时序图如下图4-4所示图4-4挂号订单模块时序图4.4就诊人管理模块流程图如下图4-5所示图4-5就诊人管理模块时序图时序图如下图4-6所示图4-6就诊人管理模块时序图4.5注册登录模块流程图如下图4-7所示图4-7注册登录模块时序图时序图如下图4-8所示图4-8注册登录模块时序图4.6用户管理模块流程图如下图4-9所示图4-9用户管理模块功能流程图时序图如下图4-10所示图4-10用户管理模块时序图4.7数据管理模块流程图如下图4-11所示 图4-11数据管理模块功能流程图时序图如下图4-12所示图4-12数据管理模块时序图4.8医院管理模块流程图如下图4-13所示图4-13医院管理模块功能流程图时序图如下图4-14所示图4-14医院管理模块时序图4.9订单管理模块流程图如下图4-15所示图4-15订单管理模块功能流程图时序图如下图4-16所示图4-16订单管理模块时序图4.10统计管理模块流程图如下图4-17所示图4-17统计管理模块功能流程图时序图如下图4-18所示图4-18统计管理模块时序图4.11医院设置模块流程图如下图4-19所示图4-19医院设置模块功能流程图时序图如下图4-20所示图4-20医院设置模块时序图4.12科室排班管理模块流程图如下图4-21所示图4-21科室排班管理模块功能流程图时序图如下图4-22所示图4-22科室排班管理模块时序图4.13本章小结本章主要通过编码、画流程图和时序图以及实现过程中的思考感悟,让我对系统的宏观及微观都有了更加深入的理解和掌握,也让我对未来相似的设计实现有了宝贵的经验。
5系统测试系统测试项目的最后保障,是对前面所有工作和编码部分的最终审核,是保证项目质量的重要手段。。5.1测试目的由于人的能力有一定的局限性,在软件开发周期的过程中难免会考虑不周或犯些错误,这些缺陷和错误如果不及时纠正,会对用户或软件开发者造成一定的影响。通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患所带来的商业风险。。5.2功能性测试检查系统功能是否满足产品需求规格说明书的要求,系统的各个功能是否可以保持无错误,是产品可靠性的保障。下面将会对系统的三个平台中的不同模块分别进行测试。5.2.1实名认证模块测试用例对平台用户实名认证模块中的用户列表、认证审核列表中的用户详情数据进行在增删查改相关操作。表5-1实名认证模块测试用例表用例编号1被测功能实名认证功能描述实名认证测试目的保证该实名认证模块功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加认证认证添加添加成功2修改认证认证修改修改成功3删除认证认证删除删除成功4查询认证认证查询查询成功5.2.2挂号订单模块测试用例用户对挂号订单模块中的订单进行查询、删除、查看、取消预约等相应数据操作。表5-2挂号订单模块测试用例表用例编号2被测功能挂号订单功能描述用户进行挂号订单操作测试目的保证该挂号订单模块功能可以正常使用测试步骤查询、删除、修改、取消序号输入数据/动作测试点预期结果1查询订单挂号订单查询成功2修改订单挂号订单修改成功3删除订单挂号订单删除成功4取消预约挂号订单取消成功5.2.3就诊人管理模块测试用例用户对就诊人管理模块中的就诊人进行添加、删除、修改等相应数据操作。表5-3就诊人管理模块测试用例表用例编号3被测功能就诊人管理功能描述用户对就诊人进行管理测试目的保证该就诊人管理模块功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加就诊人就诊人管理添加成功2修改就诊人就诊人管理修改成功3删除就诊人就诊人管理删除成功4查询就诊人就诊人管理查询成功5.2.4登陆注册模块测试用例用户在登陆注册模块进行手机号、微信扫码登录注册登录等相应注册登录操作。表5-4注册登录模块测试用例表用例编号4被测功能登陆注册功能描述用户进行注册登录测试目的保证该登陆注册模块功能可以正常使用测试步骤添加、删除、修改、扫码序号输入数据/动作测试点预期结果1输入手机号注册登录添加成功2修改手机号注册登录修改成功3删除手机号注册登录删除成功4微信扫码注册登录登录成功5.2.5用户管理模块测试用例系统管理员对用户管理模块中的用户列表、认证审核列表中的用户详情数据进行在增删查改相关操作。表5-1用户管理模块测试用例表用例编号5被测功能用户管理功能描述系统管理员可以管理用户以及用户认证测试目的保证该模块功能可以正常使用测试步骤添加、删除、修改、查询、审批、锁定、清空序号输入数据/动作测试点预期结果1添加用户用户列表添加成功2删除用户用户列表删除成功3修改用户用户列表修改成功4查询用户用户列表查询成功5查询认证认证列表查询成功6审批通过认证列表认证成功7审批拒绝认证列表认证失败8锁定用户用户列表锁定成功9取消锁定用户列表取消锁定成功10清空条件选择用户列表清空成功5.2.6数据管理模块测试用例系统管理员对数据管理模块中的数据字典列表进行查看、导入、导出等相关操作。表5-2数据管理模块测试用例表用例编号6被测功能数据管理功能描述系统管理员可以管理数据字典测试目的保证该数据管理模块功能可以正常使用测试步骤导入、导出、查询序号输入数据/动作测试点预期结果1导入字典数据字典导入成功2导出字典数据字典导出成功3查询字典数据字典查询成功4点击省数据字典显示省级列表5点击医院等级数据字典显示医院级别6点击二级菜单数据字典显示二级目录5.2.7医院管理模块测试用例系统管理员对医院管理模块中的医院设置、医院列表中的医院数据进行在增删查改等相关操作。表5-3医院管理模块测试用例表用例编号7被测功能医院管理功能描述系统管理员可以进行医院管理测试目的保证该医院管理模块功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加医院医院管理添加成功2修改医院医院管理修改成功3删除医院医院管理删除成功4查询医院医院管理添加成功5.2.8订单管理模块测试用例系统管理员对订单管理模块中的订单列表中的订单数据进行在增删查改等相关操作。表5-4订单管理模块测试用例表用例编号8被测功能订单管理功能描述系统管理员可以进行订单管理测试目的保证该功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加订单订单管理添加成功2修改订单订单管理修改成功删除订单订单管理删除成功3添加订单订单管理添加成功5.2.9统计管理模块测试用例系统管理员对统计管理模块中的预约统计中的预约数据进行在查看操作。表5-5统计管理模块测试用例表用例编号9被测功能统计管理功能描述系统管理员可以进行统计管理测试目的保证统计功能正常测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加统计统计管理添加成功2修改统计统计管理修改成功3删除统计统计管理删除成功4查询统计统计管理添加成功5.2.10医院设置模块测试用例医院对接人员对医院设置模块中的医院编号、签名key、接入地址进行操作。表5-10医院设置模块测试用例表用例编号10被测功能医院设置功能描述对接人员可以进行医院设置测试目的保证该医院设置模块功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加医院code医院设置添加成功2添加医院签名医院设置添加成功3添加接入地址医院设置添加成功4修改医院code医院设置修改成功5修改医院签名医院设置修改成功6修改接入地址医院设置修改成功5.2.11科室排班模块测试用例医院对接人员对科室排班模块中的科室、排班数据进行添加、删除等操作。表5-11科室排班模块测试用例表用例编号11被测功能科室排班功能描述对接人员可以进行科室排班管理测试目的保证该科室排班模块功能可以正常使用测试步骤添加、删除、修改、查询序号输入数据/动作测试点预期结果1添加科室科室列表添加成功2修改科室科室列表修改成功3删除科室科室列表删除成功4查询科室科室列表查询成功5添加排班排班列表添加成功6修改排班排班列表修改成功7删除排班排班列表删除成功8查询排班排班列表查询成功5.3非功能性测试(1)界面多端适配性,通过在不同电子设备之间进行切换,整个系统平台的界面任然可以展现出客观可用的效果,在不同平台可以很好的适配。(2)稳定安全性,通过Jmeter测试工具,模拟一秒内1000次的同时访问,服务器任然可以安全稳定的工作。(3)易用扩展性,通过自己和室友等几人的实际使用在易用性方面有不错的效果,由于采用微服务加模块化设计所以在扩展性方面比较优秀。5.4本章小结本章从功能性和非功能性两方面分析了系统测试的过程,再对系统每个功能模块进行功能性和非功能性能测试,并通过测试用例的形式清楚地记录下来。通过系统测试可以发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文档管理标准化流程
- 胖大海清咽糖与西药结合治疗咽喉疾病的比较研究
- 2026年健康管理师(健康管理服务评估)自测试题及答案
- 纸寿千年 墨韵万变非遗宣纸的文化传承与创新
- 空调物联网应用研究
- 产品研发流程模板从创意到上市的全程指导
- 青少年爱国主义教育培训大纲
- 数据中心维护公告函(6篇)范文
- 城市历史地段街道家具设计地域文化表达跨文化比较研究方法
- 智能办公空间布局与管理规范手册
- GB/T 26542-2011陶瓷砖防滑性试验方法
- 团队领导力课件
- 丰收罗鼓民乐合奏乐谱
- 主体分部工程验收方案
- 工业机器人第六章操作臂动力学课件
- 砂子岭社区财务公开表(XX3年一季度)
- 贵州理工《中国近现代史纲要》教案第3章 辛亥革命与君主专制制度的终结
- 造粒车间生产管理制度
- 给排水专业主要设备材料技术要求2020
- 人教A版(2019)高中数学必修第一册第五章 三角函数 知识归纳整理
- 建安B考试题库
评论
0/150
提交评论