摘 要
在当今信息化高速发展的时代,医疗服务行业也面临着数字化转型的迫切需求。为了提高医院的服务效率、优化患者就医体验,并有效管理医疗资源,基于SpringBoot的医院预约管理系统应运而生。该系统旨在通过整合医院内部资源,实现患者预约、医生排班、就诊记录查询等功能的自动化与智能化,为患者提供便捷、高效的预约服务,同时也为医院管理层提供决策支持,助力医院实现精细化管理。
SpringBoot以其快速开发、简化配置、易于集成等特性,成为构建医院预约管理系统的理想框架。通过采用SpringBoot技术栈,我们能够快速搭建起一个稳定、可靠、可扩展的预约管理系统,满足医院日常运营的需求,并随着业务的发展不断迭代优化。
本文将详细介绍基于SpringBoot的医院预约管理系统的设计与实现过程,包括系统需求分析、架构设计、数据库设计、主要功能模块的实现等方面。希望通过本文的介绍,能够为广大医院管理者和技术人员提供一个可参考的解决方案,推动医疗服务行业的数字化转型进程。医院预约管理系统使用 Java 语言,采用基于 MVC 模式的 JavaEE 技术进行开发,使用MyEclipse 编译器编写,数据方面主要采用的是微软的 MySQL 关系型数据库来作为数据存储媒介,配合前台 HTML+CSS 技术完成系统的开发。
关键词:医院预约管理系统;springboot框架;MySQL数据库;
Design and Implementation of a Hospital Appointment Management System Based on SpringBoot
Abstract
In the era of rapid information development, the medical service industry is also facing an urgent need for digital transformation. In order to improve the service efficiency of hospitals, optimize the patient experience, and effectively manage medical resources, a hospital appointment management system based on SpringBoot has emerged. The system aims to integrate internal resources of the hospital, achieve automation and intelligence of patient appointments, doctor scheduling, and visit record queries, provide convenient and efficient appointment services for patients, and also provide decision support for hospital management, helping the hospital achieve refined management.
SpringBoot, with its fast development, simplified configuration, and easy integration, has become an ideal framework for building hospital appointment management systems. By adopting the SpringBoot technology stack, we can quickly build a stable, reliable, and scalable appointment management system to meet the daily operational needs of hospitals, and continuously iterate and optimize it as business develops.
This article will provide a detailed introduction to the design and implementation process of a hospital appointment management system based on SpringBoot, including system requirement analysis, architecture design, database design, and implementation of main functional modules. I hope that through the introduction in this article, we can provide a reference solution for hospital managers and technicians, and promote the digital transformation process of the medical service industry. The hospital appointment management system is developed using Java language and JavaEE technology based on MVC mode. It is written using MyEclipse compiler and mainly uses Microsoft's MySQL relational database as the data storage medium. The system is developed in conjunction with front-end HTML+CSS technology.
Key words:Hospital appointment management system; Springboot framework; MySQL database;
目录
在数字化、信息化的时代背景下,医疗服务行业正经历着深刻的变革。随着患者数量的不断增加,传统的医疗服务模式已经难以满足人们日益增长的医疗需求。特别是在医院预约管理方面,传统的预约方式通常存在流程繁琐、效率低下等问题,不仅给患者带来了不便,也增加了医院的管理难度。因此,开发一个高效、便捷的医院预约管理系统成为了迫切的需求。
SpringBoot以其快速开发、简化配置、易于集成等特性,成为了现代软件开发中广泛使用的框架之一。通过采用SpringBoot技术栈,可以快速构建出稳定、可靠、可扩展的医院预约管理系统,以满足医院和患者的实际需求。
基于SpringBoot的医院预约管理系统的设计与实现,其意义深远而广泛。它不仅为患者提供了极大的便利,通过在线预约、就诊记录查询等功能,极大地提升了患者的就医体验,让患者能够更高效地管理自己的健康需求。对于医院而言,该系统通过实时监控和数据分析,优化了医疗资源的配置和利用,提高了医疗服务效率,有助于医院实现精细化和科学化的管理。同时,从技术层面来看,这一系统的开发不仅推动了医疗信息化技术的进步,还为其他行业领域提供了可借鉴的信息化解决方案,促进了整个社会的数字化、智能化转型。
基于SpringBoot的医院预约管理系统的设计与实现,在国内外均受到了广泛的关注和研究。随着医疗信息化水平的不断提升,医院预约管理系统已成为提高医疗服务效率、优化患者就医体验的重要手段。
在国内,越来越多的医院开始意识到预约管理系统的重要性,并纷纷投入资源进行开发和应用。许多医院采用SpringBoot等先进框架,结合实际需求,设计并实现了功能丰富、操作便捷的预约管理系统。这些系统不仅支持在线预约、医生排班管理、就诊记录查询等基础功能,还融入了大数据分析、智能推荐等先进技术,为患者提供更加个性化、智能化的服务。
在国际上,医院预约管理系统的研究也呈现出蓬勃发展的态势。许多国家和地区都积极推动医疗信息化进程,将预约管理系统作为医疗服务的重要组成部分。这些系统不仅满足了患者的基本需求,还通过跨机构、跨地区的信息共享和协同,实现了医疗资源的优化配置和高效利用。
综上所述,基于SpringBoot的医院预约管理系统的设计与实现在国内外均取得了显著的进展,为医疗服务行业的数字化转型提供了有力的支持。随着技术的不断发展和应用的深入,相信未来该系统将发挥更加重要的作用,为医患双方带来更加便捷、高效的服务体验。
基于SpringBoot的医院预约管理系统的设计与实现研究,主要聚焦于构建一个功能完善、用户友好的在线预约平台,以满足医院日常运营中患者预约、医生排班、就诊记录管理等核心需求。研究内容涵盖系统需求分析、架构设计、数据库设计、功能模块实现等多个方面。通过深入分析医院预约管理的业务流程和用户需求,我们旨在设计出一个高效、稳定、可扩展的系统架构,并利用SpringBoot框架的优势,实现系统的快速开发和部署。
研究的主要目标包括:一是提高医院的预约服务效率,通过自动化、智能化的预约流程,减少患者等待时间,优化就医体验;二是实现医疗资源的合理配置,通过实时监控医生排班和患者就诊情况,为医院管理层提供决策支持,提高医疗资源的利用效率;三是保障系统的稳定性和安全性,通过合理的系统设计和严格的安全措施,确保患者信息的安全和系统的稳定运行。
通过本研究的实施,我们期望能够为医院提供一个功能强大、易于管理的预约管理系统,为患者提供更加便捷、高效的预约服务,同时也为医院管理层提供有力的支持,推动医疗服务行业的数字化转型和升级。
1.4论文结构与章节安排
本文共分为六章,章节内容安排如下:
第一章为引言,此章节对所设计和实现的系统的背景和状况以及意义进行详细的论述以及说明,同时进行了论文整体框架的结构的简要介绍。
第二章为系统需求分析,章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。
第三章为系统的设计,主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。
第四章就是对系统的实现,根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结。
B/S架构采取浏览器请求,服务器响应的工作模式。
用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。
在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。
Mysql是一个多用户、多线程的服务器,采用SQL的数据库,数据库管理系统是基于SQL的用户以及服务器模式的关系,它的优点有强大的功能、操作简单、管理方便、可靠安全、运行较快、多线程、跨平台性、完全网络化、稳定性等,非常适合Web站点或者其他应用软件,在数据库后端的开发。此外,利用许多语言,会员可以编写和访问Mysql数据库的程序。Mysql数据库也是开放源代码的,开发者越来越喜欢使用Mysql关系数据库,应用范围也被推而广之。这是由于速度快和易用性, Web站点或应用软件的数据库后端的开发也都在使用它。
mysql 数据库它有很多的优点,例如它在操作上能够让人通俗易懂、功能强大、信息储存量高等优点。所以被人们广泛应用,对于mysql数据库来说它一般主要是对数据进行编码和查询,而且在很多的设计当中都应用到了该数据库,在此过程当中我们可以对常规的数据进行查询和组合,所以我们在进行使用mysql数据库的时候只要对编写一小段的数据就能实现相应的功能。数据库,就是数据存储的储藏室,只不过数据是存储在计算机上的,而不是现实中的储藏室,数据的存放是按固定格式,而不是无序的,则定义就是 :长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要包括数据表的建立,数据存储、修改和增加数据,为了使数据库系统能够正常运行,相关人员进行的管理工作。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。
2.3springboot框架
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。
本系统将在经济、技术、法律这三个角度上进行可行性分析。
医院预约管理系统在数据的存储上使用的MYSQL数据库,在医院预约管理系统开发中使用了JAVA、HTML、TOMCAT、SSM这些开发工具的使用,能够给我们的编写工作带来许多的便利。系统使用B/S模式进行开发,使系统的可扩展性和维护性更佳,减少系统配置代码,简化编程代码,目前B/S模式是目前最受欢迎的一种模式。
-
-
- 经济可行性
-
从经济可行性上看项目在开发阶段需要一台开发PC,在生产阶段需要web服务器和数据库服务器。一台个人PC从经济上来看也不是太多问题,在后期的系统部署生产上来说,服务器的投入也不会过高,在经济层面上是一个比较可行的。
-
-
- 法律可行性:
-
系统从法律层面上来没有对第三方有其他放有法律层面的问题,系统数据库采用的Mysql 开源社区数据库、框架采用的是开源的Springboot框架。系统资讯和相关内容也是有法律层面的。在源码的管理上采用git开源进行管理,所以在法律可行性上是成立的。
3.2性能分析
对于性能分析,与传统的管理方式相比,传统的管理方式是使用人工通过用纸和笔进行数据信息的统计和管理,并且这种方式对于存储和查找某一数据信息都比较麻烦,随着计算机网络的到来,这种传统的方法很难适应当下社会的发展,不仅降低人们的办事效率,而且还需要很多的人力和物力,对于使用的时间和所要花费的费用都是比较高的,为了降低成本费用,提高用户的工作效率,进行开发一套基于计算机和网络技术的医院预约管理系统的设计与实现。
医院预约管理系统的设计与实现的开发设计时一个独立的系统,以流行数据库进行数据的存储开发,主要是为了实现医院预约管理系统的设计与实现的用户角色及相对应的功能模块,让医院预约管理系统的设计与实现的管理不会存在管理差异、低效率,而是跟传统的管理信息恰好相反,医院预约管理系统的设计与实现的实现可以节约资源,并且对于业务的处理速度也提高,速度快、效率高,功能性强大。
3.3系统操作流程
3.3.1信息添加流程
对于医院预约管理系统的设计与实现,需要随时添加所需要的数据信息,对于用户添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,用户所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图3-1所示。
不管是哪个用户角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,用户一旦将信息删除,那么该删除的数据信息将无法恢复,所以用户在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图3-2所示。
图3-2信息删除流程图
3.4系统功能分析
3.4.1 功能性分析
医院预约管理系统的设计与实现我划分为了管理员、患者用户、医生用户、管理用户这四大部分。
(一)管理员功能分析:
管理员作为系统的最高权限用户,拥有对整个系统进行全面管理的职责。管理员可以通过后台首页监控系统运行状态,管理各类系统用户(包括管理员、患者用户、医生用户、管理用户),确保用户信息的准确性和安全性。此外,管理员还需管理患者账户、充值信息、科室信息、医生排班等核心数据,以及预约挂号、取消挂号、患者挂号、就诊信息、设备预约、住院登记等业务流程。同时,管理员负责系统管理和系统公告管理,确保系统的稳定运行和信息的及时传达。最后,管理员还需管理医院资讯和资讯分类,为医院提供丰富多样的资讯内容。
(二)管理者功能分析:
管理者是医院预约管理系统中负责监督和管理医院日常运营工作的用户。他们可以通过首页快速了解医院的运营情况和重要信息。管理者可以查看系统公告和医院资讯,获取医院的最新动态和政策变化。同时,管理者可以管理科室信息和医生排班,确保医疗资源的合理分配。在个人中心,管理者可以查看和管理自己的账户信息,以及进行预约挂号、取消挂号、患者挂号、就诊信息查看、设备预约、住院登记等操作。此外,管理者还可以收藏常用功能或页面,方便快速访问。
(三)医生功能分析:
医生用户是医院预约管理系统中重要的参与者之一。他们可以通过首页快速了解医院的最新动态和公告信息。医生可以查看自己的排班情况,以便合理安排工作时间。在个人中心,医生可以查看和管理自己的账户信息,以及进行预约挂号、取消挂号、患者挂号、就诊信息查看等操作。医生可以查看患者的挂号记录,了解患者的就诊情况,为患者提供及时准确的医疗服务。此外,医生还可以收藏常用功能或页面,提高工作效率。
(四)患者功能分析:
患者用户是医院预约管理系统的核心用户群体。他们可以通过首页了解医院的科室信息、医生排班等基本情况。患者可以查看系统公告和医院资讯,获取医院的最新动态和健康知识。在个人中心,患者可以管理自己的账户信息,包括个人信息、充值信息等。患者可以进行预约挂号、取消挂号、查看就诊信息、设备预约、住院登记等操作,享受便捷高效的医疗服务。此外,患者还可以收藏常用功能或页面,方便快速访问。通过医院预约管理系统,患者可以更好地管理自己的健康,提高就医体验。
基于上面功能性需求,非功能需求也是项目设计中一项必定考虑进去的工作。首先是安全性的需求,其次是界面必须整洁干净等的需求,再次就是可扩展的需求。除此之外,还有性能、可靠性的需求,具体可以表示在如下表所示。
表3-3 系统非功能需求表
安全性 | 只有在登录的情况下才能进行相应功能的操作,尤其是管理员功能,防止后台管理端被侵入。 |
可靠性 | 系统的功能明确,操作一个功能,不会产生额外的功能影响,操作功能的时候,页面也不会造成额外的跳动。 |
性能 | 响应时间尽量控制在1s之内 |
可扩展性 | 后台采用自顶向下的开发,利于开发与维护。 |
易用性 | 在用户使用上,尽可能使用更多的图标进行功能暗示,提供系统的可阅读性和友好性。 |
可维护性 | 前台和后台注意按照模块化开发的原则,对于组件和方法的保存和包的建立需要遵照一般开发原则,以利于维护。 |
3.5 系统用例分析
医院预约管理系统的完整UML用例图分别是图3-4和图3-5。
患者/医生用户用例图如下图所示。
图3-4 患者/医生用户功能模块图
管理者用户/管理员用例图如下图所示。
图3-5管理者用户/管理员功能模块图
4.1开发流程设计
医院预约管理系统的设计与实现的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。
从医院预约管理系统的设计与实现的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图4-1所示。
图4-1开发系统流程图
4.2数据库设计
数据库是信息系统的基础和核心。数据库设计的好坏直接影响到信息系统开发的成败。创建数据库表首先确定实体的属性和实体之间的关系。根据关系创建一个数据表。4.2.1实体ER图
数据库是整个软件编程中最重要的一个步骤,对于数据库问题主要是判定数据库的数量和结构公式的创建。展示系统使用的是Mysql进行对数据库进行管理,进行保证数据的安全性、稳定性等。
概念模型的设计是为了抽象真实世界的信息,并对信息世界进行建模。它是数据库设计的强大工具。数据库概念模型设计可以通过E-R图描述现实世界的概念模型。系统的E-R图显示了系统中实体之间的链接。而且Mysql数据库是自我保护能力比较强的数据库,下图主要是对数据库实体的E-R图:
(1) 医院预约管理系统的设计与实现整体E-R图,如图4-2所示

图4-2 医院预约管理系统的设计与实现整体E-R图
这些功能可以充分满足医院预约管理系统的设计与实现的需求。此系统功能较为全面如下图系统功能结构如图4-3所示。

图4-5系统功能结构图
4.3.2数据表
我们可以根据数据结构的详细分析要求,我们根据输入和输出数据量的要求进行分析,确定什么表表,结构之间的关系,我们可以验证,调整和完善,查询和浏览过程,可以实现数据库,以使用户对数据和功能有更多要求。
基于系统使用的数据库管理系统的特点,对数据库的概念模型进行了转换和构建。但是,这个系统只需要充分考虑医院预约管理系统的设计与实现的功能,而且组织比较清晰。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
表admission_registration (住院登记)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | admission_registration_id | int | 10 | 0 | N | Y | 住院登记ID | |
2 | appointment_number | varchar | 64 | 0 | N | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
9 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
10 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
11 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
12 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
13 | visit_time | datetime | 19 | 0 | Y | N | 就诊时间 | |
14 | whether_hospitalized_or_not | varchar | 64 | 0 | Y | N | 是否住院 | |
15 | manage_users | int | 10 | 0 | Y | N | 0 | 管理用户 |
16 | check_in_time | date | 10 | 0 | Y | N | 入住时间 | |
17 | hospital_room_number | varchar | 64 | 0 | Y | N | 住院房号 | |
18 | bed_number | varchar | 64 | 0 | Y | N | 病床床号 | |
19 | discharge_time | varchar | 64 | 0 | Y | N | 出院时间 | |
20 | hospitalization_status | text | 65535 | 0 | Y | N | 住院情况 | |
21 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
22 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cancel_registration_id | int | 10 | 0 | N | Y | 取消挂号ID | |
2 | appointment_number | varchar | 64 | 0 | N | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
9 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
10 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
11 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
12 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
13 | patient_account | varchar | 64 | 0 | Y | N | 患者账户 | |
14 | registration_time | date | 10 | 0 | Y | N | 挂号时间 | |
15 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
16 | cancel_time | datetime | 19 | 0 | Y | N | 取消时间 | |
17 | reason_for_cancellation | text | 65535 | 0 | Y | N | 取消原因 | |
18 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
19 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表department_information (科室信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | department_information_id | int | 10 | 0 | N | Y | 科室信息ID | |
2 | manage_users | int | 10 | 0 | Y | N | 0 | 管理用户 |
3 | department_name | varchar | 64 | 0 | N | N | 科室名称 | |
4 | department_director | varchar | 64 | 0 | Y | N | 科室主任 | |
5 | number_of_departments | varchar | 64 | 0 | Y | N | 科室人数 | |
6 | department_introduction | text | 65535 | 0 | Y | N | 科室介绍 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | doctor_scheduling_id | int | 10 | 0 | N | Y | 医生排班ID | |
2 | manage_users | int | 10 | 0 | Y | N | 0 | 管理用户 |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | doctors_photo | varchar | 255 | 0 | Y | N | 医生照片 | |
9 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
10 | scheduling_time | text | 65535 | 0 | Y | N | 排班时间 | |
11 | personal_introduction | text | 65535 | 0 | Y | N | 个人介绍 | |
12 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
13 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | doctor_users_id | int | 10 | 0 | N | Y | 医生用户ID | |
2 | doctor_no | varchar | 64 | 0 | N | N | 医生工号 | |
3 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | equipment_reservation_id | int | 10 | 0 | N | Y | 设备预约ID | |
2 | appointment_number | varchar | 64 | 0 | Y | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
9 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
10 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
11 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
12 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
13 | visit_time | datetime | 19 | 0 | Y | N | 就诊时间 | |
14 | whether_hospitalized_or_not | varchar | 64 | 0 | Y | N | 是否住院 | |
15 | equipment_reservation | varchar | 64 | 0 | Y | N | 设备预约 | |
16 | equipment_project | text | 65535 | 0 | Y | N | 设备项目 | |
17 | device_name | varchar | 64 | 0 | Y | N | 设备名称 | |
18 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
19 | appointment_instructions | text | 65535 | 0 | Y | N | 预约说明 | |
20 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
21 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
22 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
23 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表have_an_appointment_with_a_doctor (预约挂号)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | have_an_appointment_with_a_doctor_id | int | 10 | 0 | N | Y | 预约挂号ID | |
2 | appointment_number | varchar | 64 | 0 | Y | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | doctors_photo | varchar | 255 | 0 | Y | N | 医生照片 | |
9 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
10 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
11 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
12 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
13 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
14 | patient_account | varchar | 64 | 0 | N | N | 患者账户 | |
15 | registration_time | date | 10 | 0 | Y | N | 挂号时间 | |
16 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
17 | appointment_instructions | text | 65535 | 0 | Y | N | 预约说明 | |
18 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
19 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | manage_users_id | int | 10 | 0 | N | Y | 管理用户ID | |
2 | personnel_no | varchar | 64 | 0 | N | N | 人员工号 | |
3 | personnel_name | varchar | 64 | 0 | Y | N | 人员姓名 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | patient_account_id | int | 10 | 0 | N | Y | 患者账户ID | |
2 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
3 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
4 | patient_account | varchar | 64 | 0 | N | N | 患者账户 | |
5 | account_balance | int | 10 | 0 | Y | N | 0 | 账户余额 |
6 | account_details | text | 65535 | 0 | Y | N | 账户明细 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | patient_registration_id | int | 10 | 0 | N | Y | 患者挂号ID | |
2 | appointment_number | varchar | 64 | 0 | N | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
9 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
10 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
11 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
12 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
13 | registration_time | date | 10 | 0 | Y | N | 挂号时间 | |
14 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
15 | number_of_registration_numbers | varchar | 64 | 0 | Y | N | 挂号号数 | |
16 | registration_status | varchar | 64 | 0 | Y | N | 挂号状态 | |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | patient_users_id | int | 10 | 0 | N | Y | 患者用户ID | |
2 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
3 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
4 | patient_phone_number | varchar | 64 | 0 | Y | N | 患者电话 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | recharge_information_id | int | 10 | 0 | N | Y | 充值信息ID | |
2 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
3 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
4 | patient_account | varchar | 64 | 0 | Y | N | 患者账户 | |
5 | recharge_date | date | 10 | 0 | Y | N | 充值日期 | |
6 | recharge_amount | int | 10 | 0 | Y | N | 0 | 充值金额 |
7 | recharge_instructions | text | 65535 | 0 | Y | N | 充值说明 | |
8 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
9 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | visit_information_id | int | 10 | 0 | N | Y | 就诊信息ID | |
2 | appointment_number | varchar | 64 | 0 | N | N | 预约单号 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctor_no | varchar | 64 | 0 | Y | N | 医生工号 | |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
7 | doctor_position | varchar | 64 | 0 | Y | N | 医生职位 | |
8 | registration_fees | varchar | 64 | 0 | Y | N | 挂号费用 | |
9 | patient_users | int | 10 | 0 | Y | N | 0 | 患者用户 |
10 | patient_name | varchar | 64 | 0 | Y | N | 患者姓名 | |
11 | patient_gender | varchar | 64 | 0 | Y | N | 患者性别 | |
12 | patient_age | varchar | 64 | 0 | Y | N | 患者年龄 | |
13 | number_of_registration_numbers | varchar | 64 | 0 | Y | N | 挂号号数 | |
14 | visit_time | datetime | 19 | 0 | Y | N | 就诊时间 | |
15 | whether_hospitalized_or_not | varchar | 64 | 0 | Y | N | 是否住院 | |
16 | equipment_reservation | varchar | 64 | 0 | Y | N | 设备预约 | |
17 | medical_records_with_medical_orders | text | 65535 | 0 | Y | N | 医嘱病历 | |
18 | visit_content | text | 65535 | 0 | Y | N | 就诊内容 | |
19 | equipment_project | text | 65535 | 0 | Y | N | 设备项目 | |
20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。
登录流程图如下所示。
图5-1登录流程图
登录界面如下图所示。

图5-2登录界面
登录系统主要代码如下。
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
用户界面要尽量简洁大方,使用户能够方便找到需要的功能入口,首页、公告栏、潮流资讯,且要易于修改和维护,同时还要保证用户合法和系统安全。
首页载入流程图如下所示。
图5-3首页载入流程
首页界面如下图所示。

图5-4用户功能界面
医院资讯:当患者用户点击下方导航栏“医院资讯”这一菜单按钮,会显示管理员在后台发布的所有的医院资讯信息,可以查看详情;如图5-5所示。

图5-6医院资讯界面图
医生排班:当患者用户点击下方导航栏“医生排班”这一菜单按钮,会显示管理员在后台发布的所有的医生排班信息,可以查看详情;并可以进行预约挂号、点赞、评论等操作,如图5-7所示。

图5-7医生排班界面图
预约挂号:当患者用户点击“预约挂号”这一菜单按钮,会显示相关信息,可以根据详情进行填写提交等操作,如图5-8所示。

图5-8预约挂号界面图
取消挂号:医生点击“取消挂号”按钮,可以查看到所以用户取消挂号信息。如图5-9所示。

图5-9取消挂号界面
患者挂号:点击“患者挂号”按钮会显示出所有患者的挂号信息,方便医生查看和管理。如图5-10所示。

图5-10患者挂号界面
在管理员功能页面可以查看:首页、系统用户(管理员、患者用户、医生用户、管理用户)、患者账户管理、充值信息管理、科室信息管理、医生排班管理、预约挂号管理、取消挂号管理、患者挂号管理、就诊信息管理、设备预约管理、住院登记管理、系统管理、系统公告管理、资源管理(医院资讯、资讯分类)等内容进行相对应操作,如图5-11所示。

图5-11管理员功能界面
系统用户,在系统用户页面可以查看用户姓名、用户手机号、用户身份证号、性别、用户邮箱等编辑信息,并可根据需要进行修改或删除操作,如图5-12所示。

图5-12系统用户界面图
系统用户管理代码如下所示。
package com.project.demo.constant;
public class FindConfig {
public static String PAGE = "page";
public static String SIZE = "size";
public static String LIKE = "like";
public static String ORDER_BY = "orderby";
public static String FIELD = "field";
public static String GROUP_BY = "groupby";
public static String MIN_ = "_min";
public static String MAX_ = "_max";
住院登记管理,管理员点击“住院登记管理”可以对医院预约管理系统的设计与实现的住院登记信息进行管理。如图5-13所示。

图5-13住院登记管理界面图
设备预约:医生点击“设备预约”按钮,可以查看到所以设备预约信息,管理医院设备的预约情况,确保设备得到高效利用,如图5-14所示。

图5-14设备预约界面
科室信息:点击“科室信息”按钮会显示出所有科室信息,可以查看和编辑医院的科室信息。如图5-15所示。

图5-15科室信息界面
6.1 系统测试用例
系统测试包括:用户登录功能测试、医疗资讯展示功能测试、、医生排班搜索、密码修改、预约挂号功能测试,如表6-1、6-2、6-3、6-4、6-5、6-6所示:
表6-1 用户登录功能测试表
用例名称 | 用户登录系统 |
目的 | 测试用户通过正确的用户名和密码可否登录功能 |
前提 | 未登录的情况下 |
测试流程 | 1) 进入登录页面 2) 输入正确的用户名和密码 |
预期结果 | 用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入 |
实际结果 | 实际结果与预期结果一致 |
医疗资讯查看功能测试:
表6-2 医疗资讯查看功能测试表
用例名称 | 医疗资讯查看 |
目的 | 测试医疗资讯查看功能 |
前提 | 用户登录 |
测试流程 | 点击医疗资讯列表 |
预期结果 | 可以查看到所有医疗资讯信息 |
实际结果 | 实际结果与预期结果一致 |
医生排班界面测试:
表6-3 医生排班界面测试表
用例名称 | 医生排班测试用例 |
目的 | 测试医生排班功能 |
前提 | 医生用户正常登录情况下 |
测试流程 | 1)医生用户点击医生排班,然后点击后并填写信息。 2)点击进行提交。 |
预期结果 | 提交以后,页面首页会显示新的医生排班 |
实际结果 | 实际结果与预期结果一致 |
密码修改搜索功能测试:
表6-4 密码修改功能测试表
用例名称 | 密码修改测试用例 |
目的 | 测试管理员密码修改功能 |
前提 | 管理员用户正常登录情况下 |
测试流程 | 1)管理员密码修改并完成填写。 2)点击进行提交。 |
预期结果 | 使用新的密码可以登录 |
实际结果 | 实际结果与预期结果一致 |
预约挂号功能测试:
表6-5预约挂号功能测试表
用例名称 | 预约挂号测试用例 |
目的 | 测试用户预约挂号功能 |
前提 | 用户正常登录情况下 |
测试流程 | 1)搜索查看医生排班,点击预约挂号。 2)填写预约挂号信息,点击进行提交。 |
预期结果 | 预约成功 |
实际结果 | 实际结果与预期结果一致 |
5.2 系统测试结果
通过编写医院预约管理系统的测试用例,已经检测完毕用户登录模块、医疗资讯展示模块、医生排班添加模块、密码修改模块、预约挂号模块功能测试,通过这5大模块为医院预约管理系统的后期推广运营提供了强力的技术支撑。
总结与展望
经过深入的设计与实现,基于SpringBoot的医院预约管理系统已经成功上线并稳定运行。该系统通过整合医院内部资源,实现了患者挂号、医生排班、科室信息管理、就诊信息记录等一系列功能的自动化和数字化,极大地提升了医院的工作效率和服务质量。同时,系统也充分考虑了用户体验,为患者提供了便捷、快速的预约挂号服务,有效减少了患者的等待时间,提高了患者的就医体验。
展望未来,我们将继续优化和完善该系统,以满足医院不断变化的业务需求。首先,我们将关注系统的稳定性和安全性,加强系统的安全防护措施,确保患者和医院的信息安全。其次,我们将进一步优化系统的用户界面和操作流程,使其更加简洁、直观,降低用户的学习成本。此外,我们还将探索引入更多智能化技术,如人工智能、大数据分析等,以提供更精准的医疗服务和管理决策支持。
参考文献
[1]张宇晨,王利强. 基于Web的实训室后台管理系统的设计与实现 [J]. 智能城市, 2024, 10 (03): 45-47. DOI:10.19301/j.cnki.zncs.2024.03.014.
[2]王晓东,刘海燕,王迎,等. 基于SpringBoot的气象信息资源管理系统设计与实现 [J]. 电脑编程技巧与维护, 2024, (03): 79-82. DOI:10.16184/j.cnki.comprg.2024.03.028.
[3]李丹. 基于B/S的高校实验室预约管理系统设计与实现 [J]. 现代信息科技, 2024, 8 (05): 31-35. DOI:10.19850/j.cnki.2096-4706.2024.05.007.
[4]Wang Y ,Fan W . Design of Media Industry's Device Reservation Management System Based on Internet of Things [J]. Media and Communication Research, 2024, 5 (1):
[5]王伟江. 大学校园浴室预约管理系统的设计与开发 [J]. 科技资讯, 2023, 21 (23): 246-249. DOI:10.16661/j.cnki.1672-3791.2306-5042-2632.
[6]Wang Y ,Wang T ,Li D . Design and Implementation of an Android-Based Intelligent Parking Reservation Management System [J]. Journal of Intelligence and Knowledge Engineering, 2023, 1 (4):
[7]徐正超,王义斐,谭煜凯,等. 基于HTML的实验预约管理系统设计与实现 [J]. 科技与创新, 2023, (22): 146-148. DOI:10.15913/j.cnki.kjycx.2023.22.041.
[8]袁江琛. 健身预约管理系统的设计与实现 [J]. 福建电脑, 2023, 39 (11): 111-113. DOI:10.16707/j.cnki.fjpc.2023.11.023.
[9]徐赛花,张希. 一种图书馆预约管理系统设计与实现 [J]. 电脑编程技巧与维护, 2023, (07): 107-110. DOI:10.16184/j.cnki.comprg.2023.07.039.
[10]王以伍,舒晖. 基于SpringBoot+Vue前后端分离的高校实验室预约管理系统的设计与实现 [J]. 现代计算机, 2023, 29 (01): 114-117.
[11]张昕,林洪芳. 基于微信小程序的图书馆座位预约管理系统 [J]. 电子元器件与信息技术, 2022, 6 (12): 106-109. DOI:10.19772/j.cnki.2096-4455.2022.12.023.
[12]Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):
[13]杜瑛,刘冬杰. 基于Spring Boot+Vue的场地预约管理系统的设计 [J]. 电脑知识与技术, 2022, 18 (23): 31-32+35. DOI:10.14004/j.cnki.ckt.2022.1593.
[14]陈煜,李园园,苏继斌,等. 基于jsp健身房预约系统的设计与实现 [J]. 科学技术创新, 2022, (20): 66-69.
[15]李凯,王新科. 基于J2EE的高职院校电子阅览室座位预约系统的研究 [J]. 电脑与电信, 2022, (05): 84-88. DOI:10.15966/j.cnki.dnydx.2022.05.018.
[16]巩蕾. 医院挂号预约管理系统设计 [J]. 电脑编程技巧与维护, 2022, (02): 66-68+80. DOI:10.16184/j.cnki.comprg.2022.02.033.
[17]Hejing W . Commerce Middle Office Management System Based on Springboot [J]. International Journal of Advanced Network, Monitoring and Controls, 2022, 7 (2): 32-45.
[18]叶基林. 某医院挂号预约管理系统设计与实现[D]. 电子科技大学, 2021. DOI:10.27005/d.cnki.gdzku.2021.002694.
[19]Qless Inc.; "Queue And Reservation Management System" in Patent Application Approval Process (USPTO 20200286004) [J]. Computer Weekly News, 2020, 1937-.
[20]刘颖, 智慧医院门诊预约管理系统V4.0. 河南省, 河南神土信息技术有限公司, 2020-05-01.
致谢
在基于SpringBoot的医院预约管理系统的设计与实现过程中,我深感每一位参与者的贡献与付出都至关重要。首先,我要向我的导师和团队领导表示衷心的感谢,是您们的悉心指导和严谨要求,让我在这个项目中不断学习和成长。您们的专业知识和丰富经验为我指明了方向,使我在面对困难和挑战时能够保持冷静和坚定。
同时,我要感谢我的团队成员们。在这个项目中,我们共同面对了许多挑战和困难,但正是我们之间的紧密合作和相互支持,才使得我们能够克服重重难关,最终成功完成了这个系统。每一个成员都发挥了自己的专长和优势,为项目的顺利进行做出了不可或缺的贡献。
此外,我还要感谢所有参与项目测试、部署和运维的同事们。是你们的辛勤工作和无私奉献,保证了系统的稳定性和可靠性,为医院的正常运营提供了有力保障。
最后,我要感谢所有给予我帮助和支持的人,包括我的家人、朋友以及所有关心和支持这个项目的人。是你们的鼓励和支持,让我更加坚定地走在技术创新的道路上,为医院管理系统的现代化和智能化贡献自己的力量。
在此,我再次向所有参与者表示衷心的感谢和崇高的敬意!
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~