springboot校园医院预约挂号系统
摘 要
信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对校园医院管理等问题,对校园医院预约挂号进行研究分析,然后开发设计出校园医院预约挂号系统以解决问题。
本系统前端部分采用B/S模式,采用了比较流行的渐进式JavaScript框架Vue.js,后端部分基于Java的Springboot框架作为开发框架,同时集成MyBatis、Redis等相关技术。用户通过PC机访问Web版本,实现对系统功能的访问和交互。系统管理模块主要负责对已有数据库进行维护、管理、添加、维护、删除、修改等。管理员负责维护系统的各项功能、数据的备份、恢复,保证数据的完整性和一致性;负责用户的管理与配置。最后对系统进行测试后,改善了程序逻辑和代码。同时确保该系统有很好的操作体验,实现了对于政府、社会、人民的共同双赢。
关键词:校园医院预约挂号;Springboot框架;Java编程语言;MySQL数据库
Springboot Campus Hospital Appointment Registration System
Abstract
The information society needs targeted information acquisition methods, but the expansion of the channels is basically the direction of people's efforts, due to the deviation of the perspective, people can often obtain different types of information, which is also the most difficult topic for technology to overcome. Aiming at the problems of inpatient management in stomatological hospitals, the campus hospital appointment registration system was studied and analyzed, and then the campus hospital appointment registration system was developed and designed to solve the problem.
The front-end part of the system adopts B/S mode, adopts the more popular progressive JavaScript framework Vue .js, and the back-end part is based on Java's Springboot framework as the development framework, while integrating MyBatis, Redis and other related technologies. Users access the web version through a PC to access and interact with system functions. The system management module is mainly responsible for maintaining, managing, adding, maintaining, deleting, modifying, etc. of existing databases. The administrator is responsible for maintaining the functions of the system, data backup and recovery, and ensuring data integrity and consistency; Responsible for user management and configuration. Finally, after testing the system, the program logic and code were improved. At the same time, it ensures that the system has a good operating experience and achieves a win-win situation for the government, society and people.
Key words:Campus hospital appointments; Springboot framework; Java programming language; MySQL database
目 录
随着越来越多的人工智能不断融入和应用于医疗领域,医疗服务正逐步走入智能化,在中国新医改的大背景下,智慧医疗已经成为民生工程的重点和热点领域。
校园医院预约挂号系统的研究意义:
(1)节约病人挂号的排队时间。传统医院的挂号手续繁琐,具有很强的不确定性,购买人员流量不均,有明显的高峰期和低谷期,高峰期病人需要长时间排队,也易出现熟人插队等现象,低谷期会造成医生溜号,医疗资源闲置等问题。智能挂号系统可以自动计算病人的等待时间,合理分配购买时段,提高了病人购买的效率。
(2)提高病人的看病质量。有些学生生病了但对所要挂的专家科室和医生的资历等信息并不了解,只能凭借自身的感觉和印象进行选择,具有盲目性。校园医院预约挂号系统可以根据病人的病情和医生资历进行挂号,选择最为合适的医生,具有针对性,大大提高了病人的看病质量。
(3)操作方便简洁。学生利用互联网就可以随时随地的挂号预约,操作简单便捷,方便用户使用,提高了病人的购买效率。
(4)增强校园医院对学生的医疗服务质量。校园医院预约挂号系统的出现使传统繁琐拥挤的看病环境得到改善,增强了校园医院的最大作用性,同时也提高校园医院的工作效益和社会效益。
目前,随着信息科学技术的飞速发展,医疗也普遍信息化,国内外都对网上预约挂号系统做出了研究。早年以电话预约,短信预约,网上预约的方式得到了广泛应用。直至2014年统计,当时其三种预约方式受欢迎程度占比分别为:电话50%,短信40%,网网络10%。由于当时计算机网络不完善,人们对新生事物的,人们对新生事物的抵触等原因,导致网上预约挂号仍然不是主流的就医挂号模式。伴随着医疗体制改革的不断深化以及医疗事业飞速发展,人们的生活节奏也越来快,对医院多样化的医疗服务的需求再次提高。如何利用先进的信息技术为医院提供服务,更大程度的提高医院效率是医院信息化建设中的一个重点。
国外的研究因为医院和社会的体系不同,所以解决重点也不尽相同,国外研究利用仿真模型,重叠预约调度模型等计算出最佳的预约时间表,大大减少病人等待时间,利用超额调度算法降低爽约病人的影响,提高医院门诊的期望利润率,但是却没有给出具体的工具代码用以实现这些算法功能,国外更偏重于研究算法模型,具体实施的技术问题却少有涉及。而国内的研究则是针对本国的具体实际情况,利用JAVA,Dreamweaver,JSP,php等技术工具和互联网,根据号源池,分时模型等思想开发出一些预约挂号系统,解决了医院挂号排队时间长,挂号难等问题,使预约病人可以直接在互联网,或者是Android操作系统的智能电子产品上进行挂号。
但是,现存的网上预约挂号还不够智能化,病人挂号是要根据自己的经验进行科室医生等的选择,造成病情不严重也要挂专家号,有需要的病人却要等待的现象。针对以上不足,本次开发的重点就是在于如何使网上预约挂号系统更加智能化且合理运用到校园医院上去。为了解决学生病人等待时间长的问题,该系统能自动计算已有的预约人数和等待时间,给出病人一个较为准确的等待时间,学生病人就可以在合适的时间前往校园医院,为学生带来了极大的便利。
(1)绪论
从开发系统的背景、意义、以及系统的发展状况,详细描述了系统的在哪些方面能得到应用、然后对本文分结构。
(2)系统开发环境介绍
使用技术简介、数据库概念和特点、编码工具、建模工具等。
(3)系统分析
可行性分析概述、用户需求调研、系统业务流程分析、系统数据组成。
(4)系统设计
系统网络结构设计、系统总体设计、系统功能模块的划分、系统功能模块的需求,数据库设计概述、数据库概述结构设计、数据库逻辑结构设计。
(5)系统的实现
预约挂号模块的实现、预约模块设计、检测结果模块的实现。
(6)系统测试
系统编码实现后,需要进行测试,测试包括黑盒测试和白盒测试,本系统采用黑盒测试,通过输入不同组的测试数据进行测试的功能模块测试。
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[1][2]。
科技的进步,给日常带来许多便利:教室的投影器用到了虚拟成像技术,数码相机用到了光电检测技术,比如超市货物进出库的记录需要一个信息仓库。这个信息仓库就是数据库,而这次的校园智能垃圾分类管理系统也需要这项技术的支持。
用MySQL这个软件,是因为它能接受多个使用者访问,而且里面存在Archive等。它会先把数据进行分类,然后分别保存在表里,这样的特别操作就会提高数据管理系统自身的速度,让数据库能被灵活运用。MySQL的代码是公开的,而且允许别人二次编译升级。这个特点能够降低使用者的成本,再搭配合适的软件后形成一个良好的网站系统。虽然它有缺点,但是综合各方面来说,它是使用者的主流运用的对象[3]。
校园医院预约挂号系统通过B/S架构进行实现,基于浏览器和服务器方式进行开发的系统架构,只有把应用程序部署到服务器端,客户端才可以借助导航网址进行系统访问[4]。
基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行[5]。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户。
在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互[6]。
-
- Maven项目管理工具
Maven的一次生命周期,是在它执行mvn install的时间才被调用。这个命令需要Maven按照某个特定的时间顺序进行每一次动作,直至达到它所规定的生命周期目标。在整个生命周期的过程中,Maven还会进行很多默认的插件任务,比如编译和建立一个 JAR 文件[7]。
另外,Maven可以很容易的帮助你管理项目报表,建立网站,控制JAR文件等[8]。
Tomcat是Apache下的一个核心项目,最新的Servlet 和JSP 规范总是能在其中得到体现。本系统是采用Tomcat6来开发的,目前来说广大编程员都喜欢使用它,所以说现在Tomcat是比较流行的免费的开源Web 应用服务器。它不仅拥有底层技术先进、开发性能稳定、运行时所占系统资源又很小、扩展性好等系统常用的功能;而且它的底层代码是面向所有开发人员的就好像现在的Linux系统一样,编程人员可以自由地往其中加入新的功能,从而促使Tomcat一直处在不断完善和改进的过程中[9]。
技术上使用springboot+Java+MySQL+Apache的架构实现,从技术本身的角度上讲已经相当成熟,不需要考虑其本身的问题,从服务器流量以及并发的角度上讲,由于系统面向的群体为校园学生和教师,用户群体适中,根据服务器和计算能力的发展现状来看不会成为系统不利因素。再者就是开发人员本身的水平问题,笔者在实习期间已经经历过3~5个项目,也独立完成过项目,因此在技术上还是比较有信心,加上有指导老师的协助指导,相信技术上不存在问题。
本系统功能模块相对来说不是很复杂,整个设计和开发过程投入成本较低,在实际使用中,只需要一台能上网的计算机登录浏览器即可访问,后期可能开发出手机APP端的客户端或者微信小程序。操作简单,业务流程很清晰,且运维也比较轻松,面对这么大的一个市场,如果投入使用能得到大面积覆盖的话,不仅是用户的使用能给系统端带来收益,使用者想要入驻当然也是需要缴纳一定的费用的。总的来说,与前期少量的开销相比,最终产出的收益是相当可观的,也就是说该系统在经济上是完全可行的。
系统开发采用的B/S架构是最常见的Web项目架构,常用于简单Web系统项目的开发。基于B/S架构实现的系统,免去了客户端频繁更新换代的成本和麻烦,只需要一台能上网的计算机登录浏览器即可享受足不出户的快捷。系统操作便捷,可兼容到不同操作系统和不同浏览器,只需要简单熟悉系统的核心业务逻辑和步骤,任何人都能快速上手。前台与后台的分离使得业务逻辑十分清晰,超强的界面友善性同样给用户体验加分。所以,该系统具备超强的功能逻辑和快速上手的优势,我们可以说该系统在操作上是可行的。
校园医院预约挂号系统的功能主要分为前台用户根据自己的需求进行注册登录,浏览科室医生信息并对选中的医生进行预约挂号操作。后台系统管理员因职责的不同,分为普通管理员和超级管理员,普通管理员主要对预约挂号信息进行处理,处理学生病人的病例单,而超级管理员主要对注册用户,医生管理,挂号数据,患者详细信息,医治详细信息进行处理。
学生用户用例图如下所示。
图3-1 学生用户用例图
医生用例图如下所示。
图3-2 医生用例图
网站管理:管理者将一些需要通知用户的公告、轮播图通过后台执行发布操作,填写公告的标题、输入公告的内容、上传需要显示在首页里的轮播图片,通过校园医院预约挂号系统网站的前台向用户展示。
人员管理:管理者对普通管理员、学生用户、医生用户进行管理,可执行审核、更改删除等操作。
内容管理:管理者对系统前端首页的交流论坛、论坛分类、新闻资讯、新闻分类进行内容管理。
模块管理:此模块主要针对预约挂号系统主要功能进行管理包括科室信息、医生信息、预约挂号处理、取消预约、就诊记录、就诊提醒及医生排班信息。
管理员用例图如下所示。
图3-3 管理员用例图
基于上面功能性需求,非功能需求也是项目设计中一项必定考虑进去的工作。首先是安全性的需求,其次是界面必须整洁干净等的需求,再次就是可扩展的需求。除此之外,还有性能、可靠性的需求,具体可以表示在如下表所示。
表3-1 系统非功能需求表
安全性 | 只有在登录的情况下才能进行相应功能的操作,尤其是管理员功能,防止后台管理端被侵入。 |
可靠性 | 系统的功能明确,操作一个功能,不会产生额外的功能影响,操作功能的时候,页面也不会造成额外的跳动。 |
性能 | 响应时间尽量控制在1s之内 |
可扩展性 | 后台采用自顶向下的开发,利于开发与维护。 |
易用性 | 在用户使用上,尽可能使用更多的图标进行功能暗示,提供系统的可阅读性和友好性。 |
可维护性 | 前台和后台注意按照模块化开发的原则,对于组件和方法的保存和包的建立需要遵照一般开发原则,以利于维护。 |
对系统的数据流进行分析,系统的使用者分为二类,一般用户,管理员。系统主要对界面信息传送,登录信息的验证,注册信息的接收,用户各种操作的响应做处理。
系统顶层数据流图如下图所示。
图3-4 顶层数据流图
要判断用户是是什么身份,是根据登录的数据来判断后,跳转到对应的功能界面。在系统的内部用户就可以对数据进行操作,数据库中心就可以接收到系统传输的有效数据流来对数据sql语句进行对应操作。
管理员权限下的工作流程主要为:管理员通过系统界面提供登录按钮并点击,转入管理员登录界面,并在界面上填入相应的管理员账户和管理员密码,进入管理员权限下的后台系统,并且在系统左侧导航条设置了相应的操作功能。
用户权限下的工作流程主要为:用户通过系统提供的注册功能,进行身份验证并注册,而后在登录界面进行个人身份验证,并且进入用户的个人后台界面,并进行相应的操作。
校园医院预约挂号系统的业务流程如下图所示。
图3-5 系统业务流程图
校园医院预约挂号系统主要是为用户所服务的,该系统是因他们而存在,要为他们服务,因此,在系统设计时要将他们的需求放在第一位,并且要充分考虑他们的意见。
校园医院预约挂号系统的用户角色有三种,包括管理员,学生用户和医生。管理员在本系统校园医院预约挂号系统中管理预约挂号信息,预约结果信息,就诊记录信息,用户信息。用户所能实现的功能有:修改自己的密码等个人信息,预约挂号,查看自己的就诊记录。
系统功能结构图如下所示。
图4-1 系统功能结构图
校园医院预约挂号系统在前端设计采用多种技术交互使用达到界面简洁大方,使用Java作为系统的编译语言,对于之前的分析所产生的问题进行解决,功能模块设计后进行编码实现具体功能:
登录模块:使用者必须输入正确的账号与密码才能访问系统。
预约挂号模块:包括前台的预约挂号和后台的预约挂号预约管理,前台让用户申请预约挂号,后台查看预约情况。
公告管理模块:如果登录当前管理员有公告管理的权限即可以进行公告的查询、新增、删除、修改信息的操作。
预约挂号管理模块:管理者根据选择,可以给用户发布预约挂号,在添加预约挂号是输入预约挂号的详细信息,添加需要上传的文件之后回到预约挂号管理界面,在修改预约挂号时修改不对的信息,也可以删除重新添加预约挂号。
就诊记录管理模块:相关权限用户可以进行就诊记录的查询、添加、修改、删除操作,也可以对预约编号、结果文件等数据项进行单独操作,设置数据类型等参数。
借助目前的UML建模软件,ER图使其他用户可以快速轻松地了解系统的功能以及他们之间的关系。根据预约挂号的系统分析结果,整个校园医院预约挂号系统包括以下各个单元:管理员,用户,预约挂号,就诊记录,公告等。
系统的主要实体间关系E-R图如下图所示。
图4-2 系统E-R图
数据库是校园医院预约挂号系统的数据处理的基础,也是为界面数据的展示与存储的关键。校园医院预约挂号系统的数据库表如下。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 用户编号: |
表article (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 文章描述 |
表article_type (文章分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表auth (用户权限管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表cancel_reservation (取消预约)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cancel_reservation_id | int | 10 | 0 | N | Y | 取消预约ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
4 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
5 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
6 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
7 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | reason_for_cancellation | text | 65535 | 0 | Y | N | 取消原因 | |
9 | cancel_status | varchar | 64 | 0 | Y | N | 取消状态 | |
10 | cancel_reply | varchar | 64 | 0 | Y | N | 取消回复 | |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | department_no | varchar | 64 | 0 | N | N | 科室编号 | |
3 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
4 | department_location | varchar | 64 | 0 | Y | N | 科室位置 | |
5 | department_introduction | text | 65535 | 0 | Y | N | 科室介绍 | |
6 | department_remarks | text | 65535 | 0 | Y | N | 科室备注 | |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表doctor_information (医生信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | doctor_information_id | int | 10 | 0 | N | Y | 医生信息ID | |
2 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
5 | doctors_gender | varchar | 64 | 0 | Y | N | 医生性别 | |
6 | doctor_id | varchar | 64 | 0 | Y | N | 医生工号 | |
7 | registration_fee | varchar | 64 | 0 | Y | N | 挂号费用 | |
8 | working_hours | varchar | 64 | 0 | Y | N | 工作时间 | |
9 | doctors_photo | varchar | 255 | 0 | Y | N | 医生照片 | |
10 | doctor_profile | longtext | 2147483647 | 0 | Y | N | 医生简介 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | 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 | 更新时间 |
表doctor_user (医生用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | doctor_user_id | int | 10 | 0 | N | Y | 医生用户ID | |
2 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
3 | doctors_gender | varchar | 64 | 0 | Y | N | 医生性别 | |
4 | doctor_id | varchar | 64 | 0 | N | N | 医生工号 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表forum (论坛)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | forum_id | mediumint | 8 | 0 | N | Y | 论坛id | |
2 | display | smallint | 5 | 0 | N | N | 100 | 排序 |
3 | user_id | mediumint | 8 | 0 | N | N | 0 | 用户ID |
4 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
5 | praise_len | int | 10 | 0 | Y | N | 0 | 点赞数 |
6 | hits | int | 10 | 0 | N | N | 0 | 访问数 |
7 | title | varchar | 125 | 0 | N | N | 标题 | |
8 | keywords | varchar | 125 | 0 | Y | N | 关键词 | |
9 | description | varchar | 255 | 0 | Y | N | 描述 | |
10 | url | varchar | 255 | 0 | Y | N | 来源地址 | |
11 | tag | varchar | 255 | 0 | Y | N | 标签 | |
12 | img | text | 65535 | 0 | Y | N | 封面图 | |
13 | content | longtext | 2147483647 | 0 | Y | N | 正文 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
16 | avatar | varchar | 255 | 0 | Y | N | 发帖人头像: | |
17 | type | varchar | 64 | 0 | N | N | 0 | 论坛分类:[0,1000]用来搜索指定类型的论坛帖 |
表forum_type (论坛分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
3 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
4 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
5 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
6 | icon | varchar | 255 | 0 | Y | N | 分类图标: | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | 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 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
4 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
5 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
6 | registration_fee | varchar | 64 | 0 | Y | N | 挂号费用 | |
7 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
8 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
9 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
10 | time_of_appointment | datetime | 19 | 0 | Y | N | 预约时间 | |
11 | appointment_times | varchar | 64 | 0 | Y | N | 预约次数 | |
12 | appointment_description | text | 65535 | 0 | Y | N | 预约描述 | |
13 | order_status | varchar | 64 | 0 | Y | N | 订单状态 | |
14 | appointment_reply | text | 65535 | 0 | Y | N | 预约回复 | |
15 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
16 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
17 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
18 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
19 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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: |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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已取消 |
表shift_scheduling_information (排班信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | shift_scheduling_information_id | int | 10 | 0 | N | Y | 排班信息ID | |
2 | roster_title | varchar | 64 | 0 | Y | N | 排班标题 | |
3 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
4 | doctors_name | varchar | 64 | 0 | Y | N | 医生姓名 | |
5 | picture_of_shift_arrangement | varchar | 255 | 0 | Y | N | 排班图片 | |
6 | shift_arrangement_content | text | 65535 | 0 | Y | N | 排班内容 | |
7 | roster_remarks | text | 65535 | 0 | Y | N | 排班备注 | |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表student_users (学生用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_users_id | int | 10 | 0 | N | Y | 学生用户ID | |
2 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
3 | student_gender | varchar | 64 | 0 | Y | N | 学生性别 | |
4 | student_id | varchar | 64 | 0 | N | N | 学生学号 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表visit_record (就诊记录)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | visit_record_id | int | 10 | 0 | N | Y | 就诊记录ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
4 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
5 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
6 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
7 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | visit_time | datetime | 19 | 0 | Y | N | 就诊时间 | |
9 | visit_content | text | 65535 | 0 | Y | N | 就诊内容 | |
10 | visit_results | text | 65535 | 0 | Y | N | 就诊结果 | |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表visit_reminder (就诊提醒)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | visit_reminder_id | int | 10 | 0 | N | Y | 就诊提醒ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | department_name | varchar | 64 | 0 | Y | N | 科室名称 | |
4 | doctor_user | int | 10 | 0 | Y | N | 0 | 医生用户 |
5 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
6 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
7 | reminder_content | text | 65535 | 0 | Y | N | 提醒内容 | |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
将首页的左边的功能设计为用户登录的位置,所以在进行登录的地方就会显示首页。在登录后就是大众较为熟悉的位置,也就是让用户进行账号以及密码输入的样式。
当用户输入完信息并点击登录按钮时,Struts就会将用户输入的信息传递进表单并装入相应的对象之中,然后再转到相应位置进行校验。若用户名和密码框都是空的,那么系统就会不可将账号密码均设置为空值。
系统的底层设置要求账号密码不可以都是空值,将这些信息传递给相关的类中的对象方法并调用相关的信息,对于用户输入的数据进行检验。若检验结果正确会自动转到系统首页欢迎页面,如果不正确系统就会返回用户登录界面。
用户登录流程图如下所示。
图5-1 用户登录流程
系统登录界面如下图所示。
图5-2 系统登录界面
首页主要分别展示各个模块的最新动态,浏览者可以很清楚地看到不同模块的最新更新内容。并且系统首页每个部分可以跳转到相对应的模块,方便浏览者选择感兴趣的地方。
首页载入流程图如下所示。
图5-3 首页载入流程
首页如下图所示。
图5-4 首页界面
校园医院预约挂号系统的注册登录操作,用户都是从同一个注册登录页面进行注册登录,若是还未有系统账号,则进行注册操作;若是已注册账号,则用户在操作时,输入账号、密码,再选择相应的角色,如“管理员”、“用户”等。
用户注册流程图如下所示。
图5-5 用户注册流程
用户注册界面如下图所示。
图5-6 用户注册界面
-
-
- 预约挂号模块
-
用户执行预约挂号预约,并可以操作相关内容,例如查看,编辑。预约挂号预约的添加操作是建立在预约挂号信息的列表基础上,单击查看预约挂号信息下的预约挂号预约链接;然后单击“预约挂号”进行添加,添加成功后的信息会载入到预约挂号预约查询列表中。
预约挂号流程如下图所示。
图5-7 预约挂号预约流程
预约挂号界面如下图所示。
图5-8 预约挂号预约界面
-
-
- 就诊记录查询模块
-
已完成预约挂号的用户通过登录系统后点击“就诊记录”,便可以查看自己的就诊记录。
就诊记录查询流程如下图所示。
图5-9 就诊记录查询流程
就诊记录查询界面如下图所示。
图5-10 就诊记录查询界面
用户信息管理与账号管理相比更侧重对个人信息的管理,如年龄,电话,性别等,管理员可以对此部分信息进行增删改查,相应的会改变数据库存储的数据。
用户信息管理界面如下图所示。
图5-11 用户信息管理界面
-
-
- 预约挂号管理模块
-
管理员执行预约挂号管理,并可以操作相关内容,例如添加,查看,编辑和删除。通过单击“添加预约挂号”,可以通过预约挂号添加界面添加详细信息并添加预约挂号注释。单击查看字段级别链接以查看有关所选字段级别的信息。然后单击“提交”跳转重返到添加页面。添加成功后的信息会载入到预约挂号查询列表中,管理员可进行编辑以及修改。
预约挂号管理流程如下图所示。
图5-12 预约挂号管理流程
预约挂号管理界面如下图所示。
图5-13 预约挂号管理界面
-
-
- 就诊记录管理模块
-
管理员执行科室信息管理,并可以操作相关内容,例如添加,查看,编辑和删除。通过单击“添加”,可以通过添加界面添加科室信息并添加注释。单击查看字段级别链接以查看有关所选字段级别的信息。然后单击“提交”跳转重返到添加页面。添加成功后的信息会载入到就诊记录查询列表中,管理员可进行编辑以及修改。
科室信息管理流程如下图所示。
图5-14 就诊记录管理流程
科室信息添加界面如下图所示。
图5-15 科室信息添加界面
科室信息管理界面如下图所示。
图5-16 科室信息管理界面
管理员执行排班信息管理,并可以操作相关内容,例如添加,查看,编辑和删除。通过单击“添加”,可以通过添加界面添加排班信息并添加注释。单击查看字段级别链接以查看有关所选字段级别的信息。然后单击“提交”跳转重返到添加页面。添加成功后的信息会载入到就诊记录查询列表中,管理员可进行编辑以及修改。
排班信息管理流程如下图所示。
图5-17 就诊记录管理流程
排班信息添加界面如下图所示。
图5-18 排班信息添加界面
排班信息管理界面如下图所示。
图5-19 排班信息管理界面
对每个用源码进行的单元检测,以验证每个单元能否正常地执行预先设定的函数。在进行单元代码编写的过程中,采用了详细的编程指导,并通过关键的数据界面和路线的检测来检测模块中的缺陷。该试验使用了每个由源码所完成的程序,并按照程序的内部构造来进行测试,以检验各个程序的功能。
集成测试是对单位试验的延伸。装配好的试验组件,并对相关的设计进行软件体系结构的检测。其具体实施方法为:将两个以上的单元模块合并为一个部件进行试验,并进行界面的调试。针对具体的试验,采用了不同的模块整合方法。而将模组转换为体系的方式有两种:一次整合与一次繁殖整合。
登录测试用例如下表所示。
表6-1 登录测试用例
操作描述 | 数据 | 期望结果 | 实际结果 | 测试状态 |
选择管理员登录,输入用户姓名,按“登陆”按钮。 | 用户姓名:admin, 密码为空 | 显示警告信息“请填写密码!” | 显示警告信息“请填写密码!” | 与期望结果相同 |
选择管理员登录,输入密码,按“登陆”按钮。 | 用户姓名为空,密码:123456 | 显示警告信息“请填写用户名” | 显示警告信息“请填写用户名” | 与期望结果相同 |
选择管理员登录,输入用户姓名和密码,按“登陆”按钮。 | 用户姓名:1234, 密 码:1234 | 显示警告信息“该用户名不存在!” | 显示警告信息“该用户名不存在” | 与期望结果相同 |
选择管理员登录,输入用户姓名和密码,按“登陆”按钮。 | 用户名:admin,密 码:admin | 正确登入到后台页面 | 正确登入到后台页面 | 与期望结果相同 |
个人信息管理测试用例如下表所示。
表6-1 个人信息管理测试用例
操作描述 | 数据 | 期望结果 | 实际结果 | 测试状态 |
选择个人信息,清空用户名,按“保存”按钮。 | 用户姓名为空 | 显示警告信息“用户名不能为空!” | 显示警告信息“用户名不能为空! | 与期望结果相同 |
选择个人信息,清空邮箱,按“保存”按钮。 | 用户邮箱为空 | 显示警告信息“邮箱不能为空!” | 显示警告信息“邮箱不能为空!” | 与期望结果相同 |
选择个人信息,清空联系方式,按“保存”按钮。 | 用户联系方式为空 | 显示警告信息“联系方式不能为空!” | 显示警告信息“联系方式是不能为空!” | 与期望结果相同 |
选择个人信息,按“上传头像”按钮,上传头像文件大小超过1Mb。 | 头像文件大小超过1Mb | 显示警告信息“图片大小不能超过1Mb!” | 显示警告信息“图片大小不能超过1Mb!” | 与期望结果相同 |
公告管理测试用例如下表所示。
表6-1 公告管理测试用例
操作描述 | 数据 | 期望结果 | 实际结果 | 测试状态 |
用户点击“公告发布”,填写相关数据后点击“确定”。 | 在必填项输入测试数据 | 提示“发布成功” | 提示“发布成功” | 与期望结果相同 |
用户选择公告点击“修改”后点击“确定”。 | 在必填项修改测试数据 | 提示“修改成功” | 提示“修改成功” | 与期望结果相同 |
预约挂号管理测试用例如下表所示。
表6-1 预约挂号管理测试用例
操作描述 | 数据 | 期望结果 | 实际结果 | 测试状态 |
用户点击“预约挂号发布”,填写相关数据后点击“确定”。 | 在必填项输入测试数据 | 提示“发布成功” | 提示“发布成功” | 与期望结果相同 |
用户选择预约挂号点击“修改”后点击“确定”。 | 在必填项修改测试数据 | 提示“修改成功” | 提示“修改成功” | 与期望结果相同 |
就诊记录管理测试用例如下表所示。
表6-1 就诊记录管理测试用例
操作描述 | 数据 | 期望结果 | 实际结果 | 测试状态 |
用户点击“就诊记录”,填写相关数据后点击“确定”。 | 在必填项输入测试数据 | 提示“发布成功” | 提示“发布成功” | 与期望结果相同 |
用户选择就诊记录点击“修改”后点击“确定”。 | 在必填项修改测试数据 | 提示“修改成功” | 提示“修改成功” | 与期望结果相同 |
基于Java的校园医院预约挂号系统的测试已经完成,没有出现错误,能够成功运行。因为系统比较简单,一些功能还急需完善,但已经能够满足用户和管理者的需求,给予用户足够的帮助。
经过测试,得到测试结果如下表所示。
表5-1 测试结果
测试项目 | 测试结果 |
登录 | 成功 |
注册 | 成功 |
用户管理 | 成功 |
预约挂号 | 成功 |
科室信息管理 | 成功 |
就诊记录管理 | 成功 |
在系统的开发中,使用的是JSP文件来展示前台数据,随着前后端慢慢的彻底分离,JSP这种夹带着大量后台代码的方式以及慢慢在企业应用中消失,但是用于训练还是很有用处的,熟悉以后,也可以把项目改成Vue前端项目,进行彻底的前后端项目分离。Vue如今非常的流行,这样更方便前台系统的维护和扩展。在后台的技术使用上,为了能够快速搭建系统后台,采用了Springboot框架进行系统后台的搭建。
在系统的开发过程中,发现对数据的结构和算法的学习是十分重要的,比如树型结构数据,递归方法的使用,还有Map容器等都是常用的,虽然现在很多的第三方的插件和方法已经帮我们总结了很多有用的方法,方法的具体如何实现的有的时候还是需要进行了解的。第三方插件在使用上,虽然可以大量节约我们的开发时间,但是同样也有一定的风险,版本的更新乃至废弃都有发生,在项目的使用上,尽量还是进行方法的封装,这样以后进行项目的开发就能更好的进行维护了。
总的来说,通过这样一个小项目,能够从全局的方式了解一个项目的开发流程,应该能为以后的工作提供有力的支撑。
参考文献
[1]徐震阳,王博,蒋效伟,杨玉.多端融合的医疗健康平台设计与实现[J].现代信息科技,2023,7(01):115-118.DOI:10.19850/j.cnki.2096-4706.2023.01.031.
[2]Yu Yang. Design and Implementation of Student Information Management System Based on Springboot[J]. Advances in Computer, Signals and Systems,2022,6(6).
[3]郭丽花,彭娟,彭婧.预约挂号分时段标准化就诊系统对提高门诊服务效率的效果[J].中国标准化,2022(22):249-251.
[4]刘盈,陈月,刘立煌,郝徐杰,牛宇.不同挂号方式的实施效果评价研究[J].中国卫生事业管理,2022,39(06):416-423+480.
[5]陈勇.基于整合医疗信息的预约挂号服务客户端研究优化方法[J].自动化技术与应用,2022,41(03):77-80.
[6]陈博,焦娣,李晨,李林.门诊预约挂号系统的设计与应用[J].智慧健康,2022,8(04):1-4.DOI:10.19335/j.cnki.2096-1219.2022.04.001.
[7]张雯霄,凌佳,余睿,殷宪达,俞婷婷.预约挂号系统对患者就医行为影响因素及应用——基于模糊综合评价法的研究[J].现代信息科技,2022,6(01):140-143.DOI:10.19850/j.cnki.2096-4706.2022.01.037.
[8]王慧虹,许锡樱,沈翌卉.推进门诊预约挂号服务的现状及效果分析[J].智慧健康,2022,8(01):10-13.DOI:10.19335/j.cnki.2096-1219.2022.01.004.
[9]Gu Mengdie,Sun Rui,Yang Shulin,Gu Huijie,Yuan Ming. Research on copyright appointment registration microplatform system based on vue[J]. MATEC Web of Conferences,2022,355.
[10]姚辰欢,周典,王怡凡,罗益佳,徐慧,田帝,吴烨.基于Citespace我国医院门诊预约挂号文献可视化分析[J].齐齐哈尔医学院学报,2021,42(23):2073-2079.
[11]欧阳斌,陈瑞志,冯子洋,林声伟,窦晓欣.基于微信的校医院师生服务小程序设计[J].电脑知识与技术,2021,17(33):49-52.DOI:10.14004/j.cnki.ckt.2021.3318.
[12]杨茂琼,杨成.多元化预约挂号在三级甲等综合医院门诊管理中的应用研究[J].人人健康,2021(22):84-85.
[13]朱泽艳.微信公众平台在高校校医院的应用探讨[J].黑龙江科学,2021,12(21):148-149.
[14]Fuyuan Cheng. Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J]. Advances in Educational Technology and Psychology,2021,5(2).
[15]胡小勇. 基于SpringBoot的医院门诊管理信息系统的设计与实现[D].华中科技大学,2021.DOI:10.27157/d.cnki.ghzku.2021.001118.
[16]Suk Mi Young,Kim Bomgyeol,Lee Sang Gyu,You Chang Hoon,Hyun Kim Tae. Evaluation of Patient No-Shows in a Tertiary Hospital: Focusing on Modes of Appointment-Making and Type of Appointment[J]. International Journal of Environmental Research and Public Health,2021,18(6).
[17]梁景云.基于门诊全预约挂号流程的优化与传统排队挂号系统的研究[J].医学食疗与健康,2020,18(19):203+205.
[18]袁海燕,张莹,沈明辉.智慧医疗背景下预约挂号应用场景研究[J].医学信息学杂志,2020,41(06):54-57.
[19]Sebring Ethan J,Rudisill Melani A,Bates Jill S,Auten Jessica J,Urick Benjamin Y,Clark Stephen M. An Evaluation of the Effect of Pharmacist-Led Comprehensive Chemotherapy Consultation Services on Outpatient Appointment Adherence.[J]. Journal of managed care & specialty pharmacy,2020,26(6).
[20]黄洛,韩林玲,黄晓莉,阳淑伶.门诊多元化预约挂号服务系统的应用效果[J].右江医学,2018,46(04):459-462.
致谢
这篇文章的完成经历了多个日日夜夜的努力,终于在今天得以完成。这篇文章的创作过程实为不易,但在老师和同学的辛勤帮助下顺利渡过。让我在设计过程中举步维艰时,非常感谢我的导师不耐其烦的帮助我解决问题,给予了我许多指导意见。也感谢所有为我授业解惑的老师!
另外,本文的完成也参考借鉴了许多国内外在Java技术上的著作,如果没有著作原作的辛勤付出和科研成果,我也很难完成本论文。感谢在本论文中关联到的学者们!也感谢Google等公司,感谢他们强大的搜索引擎,让我的资料查阅省事简单。
感谢之余也还有几句话要说,虽大学学习四年,怎奈何本人才疏学浅,本文的完成已为尽力,但文中不免有些不当和错误之处,诚挚真切的请求各位老师对本文的批评改正,感谢百忙之中费心审阅我论文的老师。
免费领取项目源码,请关注●点赞收藏并私信博主,谢谢-