摘 要
随着医疗行业的不断发展和信息技术的进步,传统的诊所管理模式已经无法满足现代患者和医生的需求。基于SpringBoot的中西诊所管理系统应运而生,旨在提升诊所的运营效率和服务质量。
本文主要目的是设计并实现一个集数据统计、科室及药品管理、挂号就诊及病历处方管理等多项功能于一体的综合性中西诊所管理系统,以减少人工管理流程带来的错误和不便,提升管理效率和用户体验。在研究过程中,采用了系统分析和设计的方法,首先进行需求调研,明确使用者的需求,包括患者、医生和管理员的不同功能模块。通过SpringBoot框架,搭建系统的后端逻辑,结合MySQL数据库实现数据的高效处理与存储,采用前后端分离的设计方案,前端使用现代化的技术栈,保证友好的用户体验。
经过系统测试和优化,最终实现了一套功能完善、操作简单且安全性高的中西诊所管理系统。该系统的构建与实施不仅有效提高中西诊所管理运营的便捷性和效率,也提升了患者的就医体验,并为医疗行业的信息化管理提供了有力支持和借鉴。
关键词:中西诊所管理系统;Spring Boot框架;在线预约挂号;医疗管理系统
Abstract
With the continuous development of the medical industry and the advancement of information technology, the traditional clinic management model can no longer meet the needs of modern patients and doctors. The management system for Chinese and Western clinics based on SpringBoot has emerged, aiming to improve the operational efficiency and service quality of clinics.
The main purpose of this article is to design and implement a comprehensive Chinese and Western clinic management system that integrates multiple functions such as data statistics, department and drug management, registration and treatment, and medical record prescription management, in order to reduce errors and inconvenience caused by manual management processes, improve management efficiency and user experience. In the research process, a systematic analysis and design approach was adopted. Firstly, a requirement survey was conducted to clarify the needs of users, including different functional modules for patients, doctors, and administrators. By using the SpringBoot framework, the backend logic of the system is built, and efficient data processing and storage are achieved through MySQL database. A front-end and back-end separation design scheme is adopted, and modern technology stacks are used in the front-end to ensure a user-friendly experience.
After system testing and optimization, a comprehensive, easy-to-use, and highly secure management system for Chinese and Western clinics has been finally implemented. The construction and implementation of this system not only effectively improves the convenience and efficiency of the management and operation of Chinese and Western clinics, but also enhances the patient's medical experience, and provides strong support and reference for the information management of the medical industry.
Keywords: Chinese and Western Clinic Management System; Spring Boot framework; Online appointment registration; Medical Management System
1 前 言
1.1 研究背景
1.2 研究意义
1.3 国内外研究现状
1.3.1 国内研究现状
1.3.2 国外研究现状
1.4 论文结构与章节安排
2 关键技术
2.1 Java语言
2.2 MySQL数据库
2.3 Spring Boot框架
2.4 B/S模式
3 系统分析
3.1 可行性分析
3.1.1 技术可行性
3.1.2 经济可行性
3.1.3 操作可行性
3.2 功能需求分析
3.3 系统性能分析
3.4 系统流程分析
3.4.1 程序操作流程
3.4.2 登录流程
3.4.3 注册流程
4 系统设计
4.1 总体设计
4.1.1 系统架构设计
4.1.2 功能模块设计
4.2 数据库设计
4.2.1 数据库逻辑结构设计
4.2.1 数据库表结构设计
5 系统实现
5.1 系统环境分析
5.2 患者用户功能实现
5.2.1 用户登录模块
5.2.2 用户注册模块
5.2.3 首页模块
5.2.4 科室信息模块
5.2.5 个人中心模块
5.3 医生用户功能实现
5.3.1 挂号记录管理模块
5.3.2 叫号记录管理模块
5.3.3 就诊信息管理模块
5.3.4 病历档案管理模块
5.4 管理员功能实现
5.4.1 后台首页模块
5.4.2 系统用户模块
5.4.3 药房信息管理模块
5.4.4 科室信息管理模块
5.4.5 医生排班管理模块
5.4.6 系统管理模块
6 系统测试
6.1 测试意义
6.2 测试用例
6.3 测试分析
7 总结
参考文献
致 谢
随着医疗行业的不断发展以及信息技术的迅速进步,传统的诊所管理模式已经逐渐无法满足现代医疗服务的需求。在国内,在经济的增长和人民生活水平的提高的情况下,医疗卫生需求不断增加,尤其是中西医结合的需求逐渐显现。中西诊所作为一种兼具传统和现代医疗理念的机构,承担着日益重要的职能。然而,传统的管理方式多以人工记录和纸质文档为主,存在效率低、数据易丢失、信息不对称等问题。此外,患者的就医体验亟需改善。传统的挂号、就诊和取药流程繁琐,往往需要频繁的排队和等待,导致患者满意度降低。因此,通过引入现代化信息管理系统,实现医疗信息的数字化、智能化管理,是提升服务质量的重要途径。
本项目主要围绕如何基于Java的SpringBoot技术结合MySQL数据库的开发和实现一套功能完备、操作简便且用户友好的中西诊所管理系统,以适应当前医疗行业快速发展的需求,简化管理流程,实现医疗资源的合理配置与高效利用,提高诊所的运营效率和用户满意度。
通过构建一个高效便捷的中西诊所管理系统,搭建集信息共享、预约就诊及病历处方管理等功能为一体的综合性医疗服务平台,不仅可以优化管理流程,提高运营效率和服务质量,而且能够有效提升患者体验。通过信息化和系统化管理,能够有效减少人工干预,降低中西诊所管理成本,提高工作效率,避免人为错误。简化挂号与就诊流程,为患者提供更优质的就医体验,体现人性化服务理念,有助于增强患者的满意度和信任感。同时系统能够实时统计和分析数据,为管理层提供决策支撑,优化资源配置,提高医疗服务的质量和效率。此外,本研究顺应医疗数字化转型的趋势,能够推动中西医结合的多元化发展,为相关领域的研究提供实践案例和理论支持,丰富医疗信息化管理领域的研究成果,促进医疗行业信息化、电子化和现代化建设进一步发展。
在国内,随着医疗改革的深入和“互联网+医疗健康”政策的推进,医疗信息化管理正在逐步成为医院和诊所发展的重要方向。近年来,各类医疗信息管理系统的研究与开发不断增加,涉及电子病历、预约挂号、患者信息管理、数据分析等多个方面。一些科研机构和高校也开始对医疗管理系统进行深入研究,以提高医疗服务的质量和效率。为了提升医疗质量,国家卫健委已经启动了电子病历的推广工作,鼓励各大医院和基层医疗机构引入电子病历系统。通过信息化手段,可以实现患者信息的即时获取,增强临床决策的科学性。还有如微医作为国内较早的互联网医疗平台,通过建立线上线下结合的模式,实现了患者在线挂号、问诊和支付的便捷服务,大大缩短了患者的就医等待时间,提高了就医体验。同时,这也推动了中西诊所的信息化建设。另外像是好医生在线等一类的医疗平台,实现网络问诊、健康咨询和在线药品配送等服务,已形成了较为完整的医疗服务闭环,便于患者随时随地解决健康问题。
国外在医疗信息化管理方面的研究和应用相对成熟。例如,美国的电子健康记录(EHR)系统被广泛使用,今天几乎所有的医院都已实施了电子病历管理系统,不仅有效提高管理效率,而且为医生提供了快速、准确的患者信息获取渠道。作为全球领先的远程医疗服务提供商,Teladoc Health提供24小时的在线视频问诊服务。通过其平台,患者可以方便地与医生进行远程交流,课题降低就医成本,提高医疗服务的可及性。类似的系统还在其他国家,如英国和澳大利亚等地普遍应用,并形成了一套完整的医疗信息标准和规范,促进了跨机构的信息交流。此外还有像IBM的一款基于人工智能的医疗数据管理系统Watson Health,通过分析患者数据,提供个性化的医疗解决方案。这些成功的案例为国内相关系统的开发与实施提供了宝贵的经验和参考。
综上所述,国内外在医疗信息化管理的研究与应用中都有显著进展。国内在政策推动和技术创新的背景下,正在探索适合国情的医疗信息化发展路径。而国外则已经在相应领域形成了较为成熟的实践经验,能够提供丰富的案例以供参考。通过借鉴国外成功的经验并结合国内实际情况,可以进一步推动我国中西诊所及其他医疗机构的信息化转型,提高医疗服务的整体质量与效率。
本文共分为七章,章节内容安排如下:
第一章:引言,主要介绍中西诊所管理系统领域研究的背景和意义,概述研究的现状和系统特点。
第二章:关键技术,主要探讨和说明实现中西诊所管理系统的关键技术。
第三章:系统分析,主要从中西诊所管理系统的可行性、功能、性能等方面进行分析,为后续系统设计提供理论支持。
第四章:系统设计,主要对中西诊所管理系统功能模块、数据库进行功能设计。
第五章:系统实现,主要介绍了中西诊所管理系统各个用户的功能、系统界面的实现。
第六章:系统测试,主要对中西诊所管理系统进行测试,验证功能完整性、稳定性和安全性,评估系统在实际运行中的性能表现。
第七章:结束语。总结全文研究内容,提出对中西诊所管理系统领域未来发展的展望和建议,指出研究的不足和可优化之处,为相关领域的进一步探索提供参考。
Java是一种跨平台的编程语言,广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。在中西诊所管理系统中,Java通常用于后端开发,提供强大的处理能力和稳定性。同时Java是一种面向对象的编程语言,支持封装、继承和多态等特性,使代码更易于维护和重用。还拥有丰富的标准库和第三方框架,如Spring、Hibernate等,可以大大提高开发效率。
MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在中西诊所管理系统中,MySQL可以用于数据存储、数据查询和数据管理等方面,用户可以免费使用和修改源代码,为平台提供可靠和高性能的数据库支持。MySQL支持多种存储引擎,如InnoDB和MyISAM,可以根据不同的应用场景选择合适的存储引擎,以提高性能;提供了多种数据安全机制,如用户权限管理、数据加密和备份恢复等,确保数据的安全性。
Spring Boot是一个用于构建微服务的Java框架,简化了Spring应用程序的开发和部署过程。Spring Boot通过自动配置和约定优于配置的理念,简化了Spring应用程序的开发过程,使开发者可以更快地构建和部署应用程序;拥有丰富的生态系统,如Spring Cloud、Spring Security等,可以满足各种企业级应用的需求。在中西诊所管理系统中,Spring Boot可以帮助开发团队快速搭建后端服务,并实现各种功能模块的集成和管理。
B/S模式(Browser/Server模式)是一种网络应用架构,其中浏览器(Browser)作为客户端与服务器(Server)进行通信。这种模式使用户可以通过普通的Web浏览器访问应用程序,而无需安装额外的客户端软件。用户通过浏览器发送请求,服务器接收并处理这些请求,然后将结果返回给浏览器显示给用户。在中西诊所管理系统中,Spring Boot结合B/S模式的优势包括跨平台的兼容性,用户可以在不同操作系统和设备上访问应用程序。此外,维护和部署也更为简便,并且能够实现较高的安全性,因为服务器端控制了应用程序和数据的访问权限。
从技术角度来看,Spring Boot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。
从经济角度来看,基于Spring Boot搭建中西诊所管理系统的投入成本相对较低,因为Spring Boot本身是一个免费、开源的框架,可以节省开发成本。同时,使用MySQL作为数据库也具有成本效益高的优势。因此,本系统具有经济可行性。
从操作角度来看,Spring Boot的简洁性和高度集成的特点使得系统的部署和运行相对简单,容易维护和管理的同时,能够提供一个界面直观友好和操作简单高效的系统,能满足用户的各项要求,方便用户快速上手使用。因此,本系统具有操作可行性。
本中西诊所管理系统设计分为两个主要用户角色:患者用户、医生用户和管理员。以下是对每个角色的功能需求的详细描述。
患者用户角色用例如下图所示。

-
-
-
-
-
- 患者用户用例图
-
-
-
-
系统前台患者用户具体功能说明如下所示。
- 注册登录:提供注册和登录系统的功能,患者用户可以通过注册拥有系统账户,注册成功后可使用账号和密码登录系统前台。
- 首页:提供系统搜索功能和系统功能导航栏,展示平台的轮播图、最新动态、热门信息、推荐信息等内容。
- 通知公告:提供系统相关的通知公告信息,保证患者用户及时了解平台动态。
- 医院资讯:提供医院资讯的相关新闻、文章展示和热门资讯推荐,让患者用户快速获取最新资讯,支持点赞、收藏、评论医院资讯。
- 科室信息:提供科室信息展示,支持关键字、排序搜索,患者用户可以浏览科室信息,并点赞、收藏和评论科室信息,详情页提供预约挂号功能。
- 我的账户:提供管理个人资料功能,患者用户可修改自己的账户信息和密码信息。
- 个人中心:提供个人首页、挂号记录、取消挂号、叫号记录、就诊信息、病历档案、处方药单、收藏、评论管理等子菜单功能链接,患者用户可根据需求对其进行管理。
医生用户角色用例如下图所示。

-
-
-
-
-
- 医生用户用例图
-
-
-
-
系统后台管理医生用户具体功能说明如下所示。
- 登录:医生用户的账户信息由管理员直接在后台添加,使用账号密码可直接登录系统后台,进行管理,可对自己的个人信息和密码信息进行修改。
- 后台首页:医生用户登录后台的起始界面,该界面主要展示系统重要信息概览和数据统计分析图表(包括自己的挂号记录、就诊信息、处方药单等统计图)。
- 系统用户:医生用户可管理自己的患者用户信息,可根据患者病历号和诊疗号修改患者编号。
- 科室信息管理:医生用户可管理自己的科室信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 挂号记录管理:医生用户可搜索和浏览自己的挂号记录信息,提供审核和叫号操作,支持更新挂号状态、就诊时间。
- 取消挂号管理:医生用户可搜索和浏览自己的取消挂号信息,提供审核操作。
- 叫号记录管理:医生用户可搜索和浏览自己的叫号记录信息,提供就诊记录操作。
- 就诊信息管理:医生用户可搜索和浏览自己的就诊信息,提供生成病历、开药信息操作。
- 病历档案管理:医生用户可搜索和浏览自己的病历档案信息。
- 处方药单管理:医生用户可搜索和浏览自己的处方药单信息。
- 医生排班管理:医生用户可搜索和浏览自己的医生排班信息。
- 器械信息管理:医生用户可搜索和浏览所有器械信息。
管理员角色用例如下图所示。

-
-
-
-
-
- 管理员用例图
-
-
-
-
系统后台管理管理员具体功能说明如下所示。
- 登录:管理员可直接使用账号密码登录系统后台,进行管理,可对自己的个人信息和密码信息进行修改。
- 后台首页:管理员登录后台的起始界面,该界面主要展示系统重要信息概览和数据统计分析图表(包括科室信息、挂号记录、就诊信息、处方药单等统计图)。
- 系统用户:管理员可管理系统的所有系统用户信息,包括患者用户、医生用户和管理员等用户,支持用户权限管理和角色设置,可增改删查和审核封禁系统用户信息。
- 科室类别管理:管理员可管理所有科室类别信息,包括新增、编辑、删除和查询科室类别。
- 药品类型管理:管理员可管理所有药品类型信息,包括新增、编辑、删除和查询药品类型。
- 药房信息管理:管理员可管理所有药房信息的添加、删除、更新等操作,提供搜索功能(当药品数量大于3小于5时会弹出库存预警)。
- 科室信息管理:管理员可管理所有科室信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 挂号记录管理:管理员可管理所有挂号记录信息,包括查询、删除挂号记录,提供审核和叫号操作,支持更新挂号状态、就诊时间。
- 取消挂号管理:管理员可管理所有取消挂号信息,包括查询、删除取消挂号,提供审核操作。
- 叫号记录管理:管理员可管理所有叫号记录信息,包括查询、删除叫号记录,提供就诊记录操作。
- 就诊信息管理:管理员可管理所有就诊信息,包括查询、删除就诊信息,提供生成病历、开药信息操作。
- 病历档案管理:管理员可管理所有病历档案信息,包括查询、删除病历档案,。
- 处方药单管理:管理员可管理所有处方药单信息,包括查询、删除处方药单。
- 医生排班管理:管理员可管理所有医生排班信息,包括新增、编辑、删除和查询医生排班。
- 器械信息管理:管理员可管理所有器械信息,包括新增、编辑、删除和查询器械信息。
- 系统管理:管理员可管理系统的轮播图信息的新增、编辑、删除等操作,提供搜索功能,支持图片附带链接。
- 通知公告管理:管理员可管理平台发布的通知公告信息,包括新增、编辑、删除通知公告,提供搜索功能。
- 资源管理:管理员可管理所有医院资讯和资讯分类的新增、编辑、删除等操作,提供搜索功能,支持对医院资讯的评论管控和查看。
性能需求分析是系统设计的重要组成部分,其目标是确保系统在各种负载条件下的高效、稳定和可靠。对于中西诊所管理系统的设计与实现,下面是系统性能分析表:
-
-
-
-
- 性能需求表
-
-
-
|
项目 |
内容 |
|
响应时间 |
系统对用户请求的响应时间需在500ms以内 |
|
并发用户数 |
系统需要支持多个并发用户同时访问 |
|
吞吐量 |
系统每秒需要处理大量请求 |
|
可用性 |
系统需要保证一定的可用性 |
|
数据安全 |
用户敏感数据需要加密存储,并支持数据库备份和恢复 |
|
数据一致性 |
系统中的数据操作需保证ACID特性,确保数据一致性 |
|
扩展性 |
系统需要支持水平扩展,能够方便地增加服务器节点以应对高请求量 |
|
可维护性 |
系统代码需要清晰易懂、结构良好,方便团队成员维护和修改 |
|
日志记录 |
系统需要记录用户操作日志、异常日志以及系统运行日志 |
|
监控报警 |
系统需要实时监控运行状态,当系统异常时能够及时发送警报通知相关人员 |
|
缓存设置 |
针对频繁使用的数据,系统需要进行合适的缓存 |
用户访问平台网站,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入系统功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

用户访问平台的网站,进入登录页面页面,入其用户名和密码,后端服务接收登录请求,验证用户提供的用户名和密码是否匹配数据库中存储的信息,验证通过即可登录成功。登录流程图如下图所示。

未有账号的用户可进入注册界面进行注册操作,填写注册表格,包括用户名、密码、电子邮件等必要信息。后台系统验证并保存用户提交的信息。分配唯一用户标识符。注册成功后,用户可以使用账号密码进行登录。用户注册流程图如下图所示。

-
-
-
-
-
- 注册流程图
-
-
-
-
B/S架构,即浏览器/服务器架构,是一种基于Web的分布式计算范式。在此架构中,应用程序的逻辑被巧妙地区分为客户端和服务器两部分。具体而言,客户端借助广泛使用的浏览器界面,进行应用访问与操作;而服务器端则肩负起业务逻辑处理、数据存储及管理的核心职责。值得一提的是,客户端无需安装特定的软件,用户仅需通过浏览器输入相应的URL地址,即可轻松访问应用程序,这一特性极大地提升了用户的使用便捷性和系统的维护效率。服务器端通常采用高性能的计算机和数据库系统,能够处理大量并发请求和复杂的业务逻辑。B/S架构的优势在于其跨平台性和易于维护性,开发者可以通过更新服务器端的代码来实现整个系统的升级和维护,而无需逐一更新客户端。

功能模块设计是系统开发过程中的重要阶段,它旨在将系统划分为不同的模块,每个模块负责完成特定的功能或任务。中西诊所管理系统由多个功能模块组成,每个模块下又包含具体的功能操作。根据前文功能需求分析,可以得出功能模块图如下图所示。

E-R图有助于理清系统中的数据结构和关系,为后续的数据库表结构设计提供指导。在进行数据库设计之前,首先需要先绘制实体-关系(E-R)图。E-R图将帮助理清业务中的实体(Entity)及它们之间的关系(Relationship),从而为后续的数据库表设计提供基础。根据前文可以得出本中西诊所管理系统拥有多个实体,在此列举主要实体,各个实体之间联系总E-R图如下图所示。

在E-R图确定后,接下来可以根据实体和关系的属性设计数据库表结构。在E-R图明确了实体和它们之间的关系后,接下来可以开始设计数据库表结构。每个实体对应一个数据库表,每个属性对应表中的字段。如下列表格所示,在此列举主要数据表。
表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 |
用户编号: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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 |
parent |
varchar |
64 |
0 |
Y |
N |
父级菜单 | |
|
8 |
parent_sort |
int |
10 |
0 |
N |
N |
0 |
父级菜单排序 |
|
9 |
position |
varchar |
32 |
0 |
Y |
N |
位置: | |
|
10 |
mode |
varchar |
32 |
0 |
N |
N |
_blank |
跳转方式: |
|
11 |
add |
tinyint |
3 |
0 |
N |
N |
1 |
是否可增加: |
|
12 |
del |
tinyint |
3 |
0 |
N |
N |
1 |
是否可删除: |
|
13 |
set |
tinyint |
3 |
0 |
N |
N |
1 |
是否可修改: |
|
14 |
get |
tinyint |
3 |
0 |
N |
N |
1 |
是否可查看: |
|
15 |
field_add |
text |
65535 |
0 |
Y |
N |
添加字段: | |
|
16 |
field_set |
text |
65535 |
0 |
Y |
N |
修改字段: | |
|
17 |
field_get |
text |
65535 |
0 |
Y |
N |
查询字段: | |
|
18 |
table_nav_name |
varchar |
500 |
0 |
Y |
N |
跨表导航名称: | |
|
19 |
table_nav |
varchar |
500 |
0 |
Y |
N |
跨表导航: | |
|
20 |
option |
text |
65535 |
0 |
Y |
N |
配置: | |
|
21 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
call_record_id |
int |
10 |
0 |
N |
Y |
叫号记录ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
5 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
6 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
7 |
department_location |
varchar |
64 |
0 |
Y |
N |
科室位置 | |
|
8 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
9 |
patient_id |
varchar |
64 |
0 |
Y |
N |
患者编号 | |
|
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 |
appointment_date |
datetime |
19 |
0 |
Y |
N |
预约日期 | |
|
14 |
number_of_registered_persons |
varchar |
64 |
0 |
Y |
N |
挂号人数 | |
|
15 |
disease_description |
text |
65535 |
0 |
Y |
N |
病情说明 | |
|
16 |
visit_time |
datetime |
19 |
0 |
Y |
N |
就诊时间 | |
|
17 |
registration_fee |
varchar |
64 |
0 |
Y |
N |
挂号费用 | |
|
18 |
pay_state |
varchar |
16 |
0 |
N |
N |
未支付 |
支付状态 |
|
19 |
pay_type |
varchar |
16 |
0 |
Y |
N |
支付类型: 微信、支付宝、网银 | |
|
20 |
medical_information_limit_times |
int |
10 |
0 |
N |
N |
1 |
就诊记录限制次数 |
|
21 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
23 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
24 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
25 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
cancel_registration_id |
int |
10 |
0 |
N |
Y |
取消挂号ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
5 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
6 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
7 |
department_location |
varchar |
64 |
0 |
Y |
N |
科室位置 | |
|
8 |
registration_fee |
varchar |
64 |
0 |
Y |
N |
挂号费用 | |
|
9 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
10 |
patient_id |
varchar |
64 |
0 |
Y |
N |
患者编号 | |
|
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 |
cancel_time |
date |
10 |
0 |
Y |
N |
取消时间 | |
|
15 |
cancel_the_number |
varchar |
64 |
0 |
N |
N |
取消号数 | |
|
16 |
cancel_remarks |
text |
65535 |
0 |
Y |
N |
取消备注 | |
|
17 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
|
18 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
19 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
20 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
21 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
22 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
code_token_id |
int |
10 |
0 |
N |
Y | ||
|
2 |
token |
varchar |
255 |
0 |
Y |
N | ||
|
3 |
code |
varchar |
255 |
0 |
Y |
N |
验证码 | |
|
4 |
expire_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
失效时间 |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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 |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
department_category_id |
int |
10 |
0 |
N |
Y |
科室类别ID | |
|
2 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
3 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表department_information (科室信息)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
department_information_id |
int |
10 |
0 |
N |
Y |
科室信息ID | |
|
2 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
3 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
4 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
5 |
doctors_gender |
varchar |
64 |
0 |
Y |
N |
医生性别 | |
|
6 |
doctors_age |
varchar |
64 |
0 |
Y |
N |
医生年龄 | |
|
7 |
registration_fee |
double |
9 |
2 |
Y |
N |
0.00 |
挂号费用 |
|
8 |
number_of_patients_seeking_medical_attention |
double |
9 |
2 |
Y |
N |
0.00 |
就诊人数 |
|
9 |
doctors_photo |
varchar |
255 |
0 |
Y |
N |
医生照片 | |
|
10 |
department_name |
varchar |
64 |
0 |
Y |
N |
科室名称 | |
|
11 |
medical_classification |
varchar |
64 |
0 |
Y |
N |
医科分类 | |
|
12 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
13 |
department_location |
text |
65535 |
0 |
Y |
N |
科室位置 | |
|
14 |
specializes_in_specific_fields |
text |
65535 |
0 |
Y |
N |
擅长领域 | |
|
15 |
doctors_introduction |
longtext |
2147483647 |
0 |
Y |
N |
医生介绍 | |
|
16 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数 |
|
17 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
18 |
collect_len |
int |
10 |
0 |
N |
N |
0 |
收藏数 |
|
19 |
comment_len |
int |
10 |
0 |
N |
N |
0 |
评论数 |
|
20 |
registration_record_limit_times |
int |
10 |
0 |
N |
N |
0 |
预约挂号限制次数 |
|
21 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
doctor_scheduling_id |
int |
10 |
0 |
N |
Y |
医生排班ID | |
|
2 |
class_schedule_name |
varchar |
64 |
0 |
Y |
N |
班表名称 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
5 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
6 |
working_date |
date |
10 |
0 |
Y |
N |
上班日期 | |
|
7 |
work_shift |
varchar |
64 |
0 |
Y |
N |
上班时间 | |
|
8 |
closing_time |
varchar |
64 |
0 |
Y |
N |
下班时间 | |
|
9 |
office_department |
varchar |
64 |
0 |
Y |
N |
上班科室 | |
|
10 |
number_of_appointments |
double |
9 |
2 |
Y |
N |
0.00 |
预约数量 |
|
11 |
class_schedule_remarks |
text |
65535 |
0 |
Y |
N |
班表备注 | |
|
12 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
13 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
doctor_users_id |
int |
10 |
0 |
N |
Y |
医生用户ID | |
|
2 |
doctors_job_number |
varchar |
64 |
0 |
N |
N |
医生工号 | |
|
3 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
4 |
doctors_mobile_phone |
varchar |
16 |
0 |
Y |
N |
医生手机 | |
|
5 |
doctors_gender |
varchar |
64 |
0 |
Y |
N |
医生性别 | |
|
6 |
doctors_title |
varchar |
64 |
0 |
Y |
N |
医生职称 | |
|
7 |
date_of_employment |
date |
10 |
0 |
Y |
N |
入职时间 | |
|
8 |
registration_fee |
double |
9 |
2 |
Y |
N |
0.00 |
挂号费用 |
|
9 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
|
10 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
|
11 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
12 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
drug_type_id |
int |
10 |
0 |
N |
Y |
药品类型ID | |
|
2 |
drug_type |
varchar |
64 |
0 |
Y |
N |
药品类型 | |
|
3 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
equipment_information_id |
int |
10 |
0 |
N |
Y |
器械信息ID | |
|
2 |
instrument_name |
varchar |
64 |
0 |
Y |
N |
器械名称 | |
|
3 |
equipment_classification |
varchar |
64 |
0 |
Y |
N |
器械分类 | |
|
4 |
instrument_barcode |
varchar |
64 |
0 |
Y |
N |
器械条码 | |
|
5 |
instrument_position |
varchar |
64 |
0 |
Y |
N |
器械位置 | |
|
6 |
instrument_specifications |
varchar |
64 |
0 |
Y |
N |
器械规格 | |
|
7 |
validity_period |
double |
9 |
2 |
Y |
N |
0.00 |
有效期限 |
|
8 |
equipment_inventory |
double |
9 |
2 |
Y |
N |
0.00 |
器械库存 |
|
9 |
unit_price_of_equipment |
double |
9 |
2 |
Y |
N |
0.00 |
器械单价 |
|
10 |
instrument_usage |
text |
65535 |
0 |
Y |
N |
器械用法 | |
|
11 |
equipment_remarks |
text |
65535 |
0 |
Y |
N |
器械备注 | |
|
12 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
13 |
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 |
medical_information_id |
int |
10 |
0 |
N |
Y |
就诊信息ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
5 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
6 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
7 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
8 |
patient_name |
varchar |
64 |
0 |
Y |
N |
患者姓名 | |
|
9 |
patient_gender |
varchar |
64 |
0 |
Y |
N |
患者性别 | |
|
10 |
patient_age |
varchar |
64 |
0 |
Y |
N |
患者年龄 | |
|
11 |
appointment_date |
varchar |
64 |
0 |
Y |
N |
预约日期 | |
|
12 |
disease_description |
text |
65535 |
0 |
Y |
N |
病清说明 | |
|
13 |
visit_time |
datetime |
19 |
0 |
Y |
N |
就诊时间 | |
|
14 |
pathological_report |
varchar |
255 |
0 |
Y |
N |
病理报告 | |
|
15 |
medical_advice_information |
text |
65535 |
0 |
Y |
N |
医嘱信息 | |
|
16 |
medical_status |
text |
65535 |
0 |
Y |
N |
就诊情况 | |
|
17 |
whether_to_prescribe_medication_or_not |
varchar |
64 |
0 |
Y |
N |
是否开药 | |
|
18 |
medical_expenses |
double |
9 |
2 |
Y |
N |
0.00 |
就诊费用 |
|
19 |
pay_state |
varchar |
16 |
0 |
N |
N |
未支付 |
支付状态 |
|
20 |
pay_type |
varchar |
16 |
0 |
Y |
N |
支付类型: 微信、支付宝、网银 | |
|
21 |
medical_records_limit_times |
int |
10 |
0 |
N |
N |
1 |
生成病历限制次数 |
|
22 |
prescription_drug_list_limit_times |
int |
10 |
0 |
N |
N |
0 |
开药信息限制次数 |
|
23 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
24 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
25 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
26 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
27 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
medical_records_id |
int |
10 |
0 |
N |
Y |
病历档案ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
5 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
6 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
7 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
8 |
patient_name |
varchar |
64 |
0 |
Y |
N |
患者姓名 | |
|
9 |
patient_gender |
varchar |
64 |
0 |
Y |
N |
患者性别 | |
|
10 |
patient_age |
varchar |
64 |
0 |
Y |
N |
患者年龄 | |
|
11 |
appointment_date |
varchar |
64 |
0 |
Y |
N |
预约日期 | |
|
12 |
disease_description |
text |
65535 |
0 |
Y |
N |
病情说明 | |
|
13 |
visit_time |
varchar |
64 |
0 |
Y |
N |
就诊时间 | |
|
14 |
pathological_report |
varchar |
255 |
0 |
Y |
N |
病理报告 | |
|
15 |
medical_status |
text |
65535 |
0 |
Y |
N |
就诊情况 | |
|
16 |
whether_to_prescribe_medication_or_not |
varchar |
64 |
0 |
Y |
N |
是否开药 | |
|
17 |
archive_date |
date |
10 |
0 |
Y |
N |
档案日期 | |
|
18 |
medical_advice_information |
text |
65535 |
0 |
Y |
N |
医嘱信息 | |
|
19 |
drug_information |
text |
65535 |
0 |
Y |
N |
药品信息 | |
|
20 |
archive_remarks |
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 |
更新时间 |
|
23 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
24 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
25 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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_users_id |
int |
10 |
0 |
N |
Y |
患者用户ID | |
|
2 |
patient_id |
varchar |
64 |
0 |
Y |
N |
患者编号 | |
|
3 |
patient_name |
varchar |
64 |
0 |
Y |
N |
患者姓名 | |
|
4 |
patients_mobile_phone |
varchar |
16 |
0 |
Y |
N |
患者手机 | |
|
5 |
patient_gender |
varchar |
64 |
0 |
Y |
N |
患者性别 | |
|
6 |
patient_age |
double |
9 |
2 |
Y |
N |
0.00 |
患者年龄 |
|
7 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
|
8 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
|
9 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
pharmacy_information_id |
int |
10 |
0 |
N |
Y |
药房信息ID | |
|
2 |
pharmacy_name |
varchar |
64 |
0 |
Y |
N |
药房名称 | |
|
3 |
pharmacy_location |
varchar |
64 |
0 |
Y |
N |
药房位置 | |
|
4 |
drug_barcode |
varchar |
64 |
0 |
N |
N |
药品条码 | |
|
5 |
drug_name |
varchar |
64 |
0 |
Y |
N |
药品名称 | |
|
6 |
drug_type |
varchar |
64 |
0 |
Y |
N |
药品类型 | |
|
7 |
drug_specifications |
varchar |
64 |
0 |
Y |
N |
药品规格 | |
|
8 |
effective_date_year |
double |
9 |
2 |
Y |
N |
0.00 |
有效日期,年 |
|
9 |
drug_inventory |
double |
9 |
2 |
Y |
N |
0.00 |
药品库存 |
|
10 |
unit_price_of_drugs |
double |
9 |
2 |
Y |
N |
0.00 |
药品单价 |
|
11 |
drug_usage |
text |
65535 |
0 |
Y |
N |
药品用法 | |
|
12 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
13 |
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已取消 |
表prescription_drug_list (处方药单)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
prescription_drug_list_id |
int |
10 |
0 |
N |
Y |
处方药单ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
4 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
5 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
6 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
7 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
8 |
patient_name |
varchar |
64 |
0 |
Y |
N |
患者姓名 | |
|
9 |
patient_gender |
varchar |
64 |
0 |
Y |
N |
患者性别 | |
|
10 |
patient_age |
varchar |
64 |
0 |
Y |
N |
患者年龄 | |
|
11 |
visit_time |
datetime |
19 |
0 |
Y |
N |
就诊时间 | |
|
12 |
medical_status |
text |
65535 |
0 |
Y |
N |
就诊情况 | |
|
13 |
disciplinary_drug_list |
varchar |
64 |
0 |
Y |
N |
处分药单 | |
|
14 |
pharmacy_name |
varchar |
64 |
0 |
Y |
N |
药房名称 | |
|
15 |
pharmacy_location |
varchar |
64 |
0 |
Y |
N |
药房位置 | |
|
16 |
drug_barcode |
varchar |
64 |
0 |
Y |
N |
药品条码 | |
|
17 |
drug_type |
varchar |
64 |
0 |
Y |
N |
药品类型 | |
|
18 |
unit_price_of_drugs |
varchar |
64 |
0 |
Y |
N |
药品单价 | |
|
19 |
drug_usage |
varchar |
64 |
0 |
Y |
N |
药品用法 | |
|
20 |
quantity_of_drugs |
double |
9 |
2 |
Y |
N |
0.00 |
药品数量 |
|
21 |
payment_amount |
varchar |
64 |
0 |
Y |
N |
支付金额 | |
|
22 |
pay_state |
varchar |
16 |
0 |
N |
N |
未支付 |
支付状态 |
|
23 |
pay_type |
varchar |
16 |
0 |
Y |
N |
支付类型: 微信、支付宝、网银 | |
|
24 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
25 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
26 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
27 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
28 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
registration_record_id |
int |
10 |
0 |
N |
Y |
挂号记录ID | |
|
2 |
appointment_number |
varchar |
64 |
0 |
Y |
N |
预约编号 | |
|
3 |
registration_status |
varchar |
64 |
0 |
Y |
N |
挂号状态 | |
|
4 |
doctor_users |
int |
10 |
0 |
Y |
N |
0 |
医生用户 |
|
5 |
doctors_job_number |
varchar |
64 |
0 |
Y |
N |
医生工号 | |
|
6 |
doctors_name |
varchar |
64 |
0 |
Y |
N |
医生姓名 | |
|
7 |
department_category |
varchar |
64 |
0 |
Y |
N |
科室类别 | |
|
8 |
department_location |
varchar |
64 |
0 |
Y |
N |
科室位置 | |
|
9 |
registration_fee |
varchar |
64 |
0 |
Y |
N |
挂号费用 | |
|
10 |
patient_users |
int |
10 |
0 |
Y |
N |
0 |
患者用户 |
|
11 |
patient_id |
varchar |
64 |
0 |
Y |
N |
患者编号 | |
|
12 |
patient_name |
varchar |
64 |
0 |
Y |
N |
患者姓名 | |
|
13 |
patient_gender |
varchar |
64 |
0 |
Y |
N |
患者性别 | |
|
14 |
patient_age |
varchar |
64 |
0 |
Y |
N |
患者年龄 | |
|
15 |
appointment_date |
datetime |
19 |
0 |
Y |
N |
预约日期 | |
|
16 |
number_of_registered_persons |
varchar |
64 |
0 |
N |
N |
挂号人数 | |
|
17 |
disease_description |
text |
65535 |
0 |
Y |
N |
病情说明 | |
|
18 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
|
19 |
call_record_limit_times |
int |
10 |
0 |
N |
N |
1 |
叫号限制次数 |
|
20 |
cancel_registration_limit_times |
int |
10 |
0 |
N |
N |
1 |
取消挂号限制次数 |
|
21 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
23 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 | |
|
24 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID | |
|
25 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
schedule_id |
smallint |
5 |
0 |
N |
Y |
日程ID:[0,32767] | |
|
2 |
content |
varchar |
255 |
0 |
Y |
N |
日程内容 | |
|
3 |
scheduled_time |
datetime |
19 |
0 |
Y |
N |
计划时间 | |
|
4 |
user_id |
int |
10 |
0 |
N |
N |
用户id | |
|
5 |
create_time |
datetime |
19 |
0 |
Y |
N |
创建时间 | |
|
6 |
update_time |
datetime |
19 |
0 |
Y |
N |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
score_id |
int |
10 |
0 |
N |
Y |
评分ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
评分人: |
|
3 |
nickname |
varchar |
64 |
0 |
Y |
N |
昵称: | |
|
4 |
score_num |
double |
5 |
2 |
N |
N |
0.00 |
评分: |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
8 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
9 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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 |
int |
10 |
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 |
创建时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
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 |
更新时间: |
考虑到中西诊所管理系统主要面对部分人群,网站的访问量不大。系统处理、统计分析工作简单,Tomcat服务器能够满足中小型网络用户的数据处理,通过互联网Internet 接入及MySQL 5.6以上的数据库应用的需求点。系统具体开发环境如下表所示:
-
-
-
-
- 系统环境表
-
-
-
|
项目 |
开发环境 |
|
操作系统 |
Windows 11、Windows 10、Windows 8、Windows 7 |
|
开发语言 |
Java |
|
使用框架 |
Spring Boot |
|
体系结构 |
三层B/S体系结构 |
|
开发工具 |
IDEA(2020版)/MyEclipse(2017)/Eclipse、Vs Code |
|
数据库 |
MySQL 5.6以上 |
|
数据库管理工具 |
Navicat |
|
JDK版本 |
Java 1.8 |
|
Maven |
apache-maven 3.6.1-bin |
|
Tomcat |
apache-tomcat-7.0.88 |
用户输入用户名和密码后,系统首先对这些输入进行基本的格式验证,确保用户名和密码符合系统设定的格式要求(如长度、特殊字符要求等)。系统接收到用户输入后,会根据用户名查找系统中存储的用户信息数据库或者其他持久化存储方式。系统需要验证密码的正确性,验证成功即可成功登录。界面设计如下图所示。

-
-
-
-
-
- 用户登录界面设计
-
-
-
-
登录关键代码如下:
/**
* 登录
* @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.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}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.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
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());
Duration duration = Duration.ofSeconds(7200L);
redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);
// 返回用户信息
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, "账号或密码不正确");
}
}
用户注册时,系统要求用户提供必要的信息,例如用户名、密码、电子邮件地址等。这些信息通常由用户在注册表单中输入,并通过前端验证确保格式的正确性。注册过程完成后,系统会为新用户创建一个账户。这包括分配一个唯一的用户ID和设置初始的权限或者角色。界面设计如下图所示。

-
-
-
-
-
- 用户注册界面设计
-
-
-
-
注册关键代码如下:
/**
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询用户
Map<String, String> query = new HashMap<>();
Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));
query.put("username",user.getUsername());
List list = service.selectBaseList(service.select(query, new HashMap<>()));
if (list.size()>0){
return error(30000, "用户已存在");
}
map.put("password",service.encryption(String.valueOf(map.get("password"))));
service.insert(map);
return success(1);
}
患者用户登录系统前台后,首先进入前台首页界面,该界面主要展示网站的主要信息和功能入口,包括系统导航栏、轮播图、热门信息推荐等。界面设计如下图所示。

提供科室信息展示,支持关键字、排序搜索,患者用户可以浏览科室信息,并点赞、收藏和评论科室信息,详情页提供预约挂号功能(限制就诊挂号人数,系统将自动计算挂号及取消挂号人数,就诊人数预约为0,将提示人数已达上限)。界面设计如下图所示。

-
-
-
-
-
- 科室信息详情页界面设计
-
-
-
-
当患者用户进入科室信息的详情页面,可浏览当前科室医生的详细信息,点击“预约挂号”按钮,可输入并提交挂号记录,提交成功的挂号记录可在自己的个人中心进行管控;另外当就诊人数预约完后,提交失败,系统提示人数已达上限。界面设计如下图所示。

-
-
-
-
-
- 预约挂号界面设计
-
-
-
-
预约挂号关键代码如下所示:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
个人中心模块主要为患者用户提供个人首页、挂号记录、取消挂号、叫号记录、就诊信息、病历档案、处方药单、收藏、评论管理等子菜单功能链接,患者用户可根据需求对其进行管理。包括患者用户可确认挂号记录审核情况(由医生用户审核,通过后将安排叫号就诊),提交和确认取消挂号信息;可查询叫号信息,支付叫号账单;可查阅就诊信息并支付费用;可支持查看病历档案和下载病理报告;可确认和支付自己的处方药单;可浏览和删除收藏信息;管控和跟踪已发布的评论及其回复内容。界面设计如下图所示。

挂号记录管理模块主要为医生用户和管理员提供管理、查询和审核挂号记录信息的功能,其中管理员可管理所有挂号记录信息;医生用户可搜索和浏览自己的挂号记录信息,提供审核和叫号操作。主要由医生用户负责审核患者提交挂号记录,审核通过后可更新挂号状态,编辑叫号记录信息,安排就诊时间。界面设计如下图所示。

-
-
-
-
-
- 挂号记录管理界面设计
-
-
-
-
审核挂号记录信息关键代码:
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
叫号记录管理模块主要为医生用户和管理员提供管理叫号记录信息的功能,其中管理员可管理所有叫号记录信息;医生用户可搜索和浏览自己的叫号记录信息,提供就诊记录操作,主要由医生用户负责更新编辑叫号信息,并添加编辑就诊记录内容。界面设计如下图所示。

-
-
-
-
-
- 叫号记录管理界面设计
-
-
-
-
更新编辑就诊记录关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
就诊信息管理模块主要为医生用户和管理员提供管理就诊信息的功能,其中管理员可管理所有就诊信息;医生用户可搜索和浏览自己的就诊信息,确认支付情况,提供生成病历、开药信息操作,主要由医生用户负责上传和生成病历,更新开处方药单。界面设计如下图所示。

-
-
-
-
-
- 就诊信息管理界面设计
-
-
-
-
就诊信息管理关键代码:
@RequestMapping("/get_list")
public Map<String, Object> getList(HttpServletRequest request) {
Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));
return success(map);
}
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
上传生成病历关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
@PostMapping("/upload")
public Map<String, Object> upload(@RequestParam("file") MultipartFile file) {
log.info("进入方法");
if (file.isEmpty()) {
return error(30000, "没有选择文件");
}
try {
//判断有没路径,没有则创建
String filePath = System.getProperty("user.dir") + "/src/main/resources/static/";
File targetDir = new File(filePath);
if (!targetDir.exists() && !targetDir.isDirectory()) {
if (targetDir.mkdirs()) {
log.info("创建目录成功");
} else {
log.error("创建目录失败");
}
}
String fileName = file.getOriginalFilename();
File dest = new File(filePath + fileName);
log.info("文件路径:{}", dest.getPath());
log.info("文件名:{}", dest.getName());
file.transferTo(dest);
JSONObject jsonObject = new JSONObject();
jsonObject.put("url", "/api/upload/" + fileName);
return success(jsonObject);
} catch (IOException e) {
log.info("上传失败:{}", e.getMessage());
}
return error(30000, "上传失败");
}
病历档案管理模块主要为医生用户和管理员提供管理病历档案的功能,其中管理员可管理所有病历档案;医生用户可搜索和浏览自己的病历档案。界面设计如下图所示。

-
-
-
-
-
- 病历档案管理界面设计
-
-
-
-
病历档案管理关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
后台首页为管理员和医生用户登录后台的起始界面,该界面主要展示系统重要信息概览和数据统计分析图表,管理员可查看包括科室信息、挂号记录、就诊信息、处方药单等所有统计图;医生用户只可查看自己的挂号记录、就诊信息、处方药单等统计图。界面设计如下图所示。

管理员可管理系统的所有系统用户信息,包括患者用户、医生用户和管理员等用户,支持用户权限管理和角色设置,可增改删查和审核封禁系统用户信息。医生用户可管理自己的患者用户信息,可根据患者病历号和诊疗号修改患者编号。界面设计如下图所示。

-
-
-
-
-
- 系统用户界面设计
-
-
-
-
系统用户管理关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
管理员可管理所有药房信息信息的添加、删除、更新等操作,提供搜索功能(当药品数量大于3小于5时会弹出库存预警)。界面设计如下图所示。

-
-
-
-
-
- 药房信息管理界面设计
-
-
-
-
药房信息管理关键代码如下:
@RequestMapping("/get_list")
public Map<String, Object> getList(HttpServletRequest request) {
Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));
return success(map);
}
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
@RequestMapping(value = {"/count_group", "/count"})
public Map<String, Object> count(HttpServletRequest request) {
Integer value= service.selectSqlToInteger(service.groupCount(service.readQuery(request), service.readConfig(request)));
return success(value);
}
科室信息管理模块主要为医生用户和管理员提供管理科室信息的功能,其中管理员可管理所有科室信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容;医生用户可增改删查自己的科室信息。界面设计如下图所示。

-
-
-
-
-
- 科室信息管理界面设计
-
-
-
-
发布科室信息关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
管理员可管理所有医生排班信息,包括新增、编辑、删除和查询医生排班信息;而医生用户可搜索和浏览自己的医生排班信息。界面设计如下图所示。

管理员可管理系统的轮播图信息的新增、编辑、删除等操作,提供搜索功能,支持图片附带链接。界面设计如下图所示。

-
-
-
-
-
- 系统管理界面设计
-
-
-
-
上传轮播图关键代码如下:
@PostMapping("/upload")
public Map<String, Object> upload(@RequestParam("file") MultipartFile file) {
log.info("进入方法");
if (file.isEmpty()) {
return error(30000, "没有选择文件");
}
try {
//判断有没路径,没有则创建
String filePath = System.getProperty("user.dir") + "/src/main/resources/static/";
File targetDir = new File(filePath);
if (!targetDir.exists() && !targetDir.isDirectory()) {
if (targetDir.mkdirs()) {
log.info("创建目录成功");
} else {
log.error("创建目录失败");
}
}
String fileName = file.getOriginalFilename();
File dest = new File(filePath + fileName);
log.info("文件路径:{}", dest.getPath());
log.info("文件名:{}", dest.getName());
file.transferTo(dest);
JSONObject jsonObject = new JSONObject();
jsonObject.put("url", "/api/upload/" + fileName);
return success(jsonObject);
} catch (IOException e) {
log.info("上传失败:{}", e.getMessage());
}
return error(30000, "上传失败");
}
在软件开发生命周期中,系统测试占据着举足轻重的地位。通过进行全面而系统的测试,能够确保软件在实际使用环境中具备稳定运行的能力,从而满足用户的多样化需求,并显著提升软件的整体质量与可靠性。这一过程不仅有助于识别并修复潜在问题,还能为软件的持续优化提供有力支撑。
随着现代信息的快速发展,在社会各大领域中已经都开始应用网络信息技术,在应用网络技术的同时人们也开始把软件的质量问题作为了一个重要焦点来关注,因为一个软件的好与坏它决定着这个系统在市场上的生存,所以必须要把软件质量来做好,这样才有一定的生存能力。对于用户来说它们首先选用的都是保证这个系统软件的质量问题,因为一个系统的软件质量决定着用户在后期上成本经济的问题。图6.1就是纠错测试流程。

在系统的功能验证阶段,将对全部的功能界面进行全面测试。具体而言,将模拟用户行为,输入各类数据并进行提交操作,随后仔细观察和分析每个页面的响应反馈。这一过程旨在验证系统的功能完整性,确保页面所呈现的功能与预期相符,并能够完全实现预设的交互逻辑。通过这种全面细致的测试方法,将确保系统在实际应用中能够稳定、准确地响应用户需求。
下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
-
-
-
-
- 系统登录功能测试用例
-
-
-
|
功能描述 |
用于系统登录 | |
|
测试目的 |
检测登录时的合法性检查 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
输入的用户名和密码带有非法字符 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入的用户名或者密码为空 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入的用户名和密码不存在 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入正确的用户名和密码 |
登录成功 |
与预期结果一致 |
下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
-
-
-
-
- 注册功能测试用例
-
-
-
|
功能描述 |
用于用户注册 | |
|
测试目的 |
检测用户注册时的合法性检查 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
输入的手机号不合法 |
提示请输入正确的手机号码 |
与预期结果一致 |
|
输入的字段为空 |
提示必填项不能为空 |
与预期结果一致 |
|
输入的密码少于6位 |
提示密码必须为6-12位 |
与预期结果一致 |
|
输入的密码大于12位 |
提示密码必须为6-12位 |
与预期结果一致 |
下表是药房信息管理功能的测试用例,检测了药房信息中对药房信息的增加,删除,修改,查询等操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录系统。
-
-
-
-
- 药房信息管理的测试用例
-
-
-
|
功能描述 |
用于药房信息管理 | |
|
测试目的 |
检测药房信息时的各种操作的运行情况 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加药房信息,必填项合法输入,点击提交 |
提示添加成功 |
与预期结果一致 |
|
点击添加药房信息,必填项输入为空或不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
进入药房信息详情页修改,必填项合法输入,点击提交 |
提示提交成功 |
与预期结果一致 |
|
进入药房信息详情页修改,必填项修改为空或不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除药房信息,选择药房信息删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索药房信息,输入存在的药房信息名 |
查找出相应药房信息信息 |
与预期结果一致 |
|
点击搜索药房信息,输入不存在的药房信息名 |
不显示药房信息信息 |
与预期结果一致 |
下表科室信息管理功能的测试用例,检测了科室信息中对科室信息的增加,删除,修改,查询操作等是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录系统。
-
-
-
-
- 科室信息管理的测试用例
-
-
-
|
功能描述 |
用于科室信息管理 | |
|
测试目的 |
检测科室信息时的各种操作的运行情况 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加科室信息,必填项合法输入,点击提交 |
提示添加成功 |
与预期结果一致 |
|
点击添加科室信息,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
进入科室信息详情页修改,必填项合法输入,点击提交 |
提示提交成功 |
与预期结果一致 |
|
点击修改科室信息,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除科室信息,选择科室信息删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索科室信息,输入存在的科室信息名 |
查找出相应科室信息 |
与预期结果一致 |
|
点击搜索科室信息,输入不存在的科室信息名 |
不显示科室信息 |
与预期结果一致 |
下表是挂号记录管理功能的测试用例,检测了挂号记录中对挂号记录的增加,删除,修改,查询、审核操作等是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录系统。
-
-
-
-
- 挂号记录管理的测试用例
-
-
-
|
功能描述 |
用于挂号记录 | |
|
测试目的 |
检测挂号记录时的各种操作的运行情况 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加挂号记录,必填项合法输入,点击提交 |
提示添加成功 |
与预期结果一致 |
|
点击添加挂号记录,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
进入挂号记录详情页修改,必填项合法输入,点击提交 |
提示提交成功 |
与预期结果一致 |
|
点击修改挂号记录,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除挂号记录,选择挂号记录删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索挂号记录,输入存在的挂号记录名 |
查找出相应挂号记录信息 |
与预期结果一致 |
|
点击搜索挂号记录,输入不存在的挂号记录名 |
不显示挂号记录信息 |
与预期结果一致 |
|
点击审核挂号记录,必填项合法输入,点击提交 |
提示审核成功 |
与预期结果一致 |
|
点击审核挂号记录,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
下表是就诊信息管理功能的测试用例,检测了就诊信息中对就诊信息的增加,删除,修改,查询等操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录系统。
-
-
-
-
- 就诊信息管理的测试用例
-
-
-
|
功能描述 |
用于就诊信息管理 | |
|
测试目的 |
检测就诊信息时的各种操作的运行情况 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加就诊信息,必填项合法输入,点击提交 |
提示添加成功 |
与预期结果一致 |
|
点击添加就诊信息,必填项输入为空或不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
进入就诊信息详情页修改,必填项合法输入,点击提交 |
提示提交成功 |
与预期结果一致 |
|
进入就诊信息详情页修改,必填项修改为空或不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除就诊信息,选择就诊信息删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索就诊信息,输入存在的就诊信息名 |
查找出相应就诊信息信息 |
与预期结果一致 |
|
点击搜索就诊信息,输入不存在的就诊信息名 |
不显示就诊信息信息 |
与预期结果一致 |
下表医生排班管理功能的测试用例,检测了医生排班中对医生排班的增加,删除,修改,查询操作等是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录系统。
-
-
-
-
- 医生排班管理的测试用例
-
-
-
|
功能描述 |
用于医生排班管理 | |
|
测试目的 |
检测医生排班时的各种操作的运行情况 | |
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加医生排班,必填项合法输入,点击提交 |
提示添加成功 |
与预期结果一致 |
|
点击添加医生排班,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
进入医生排班详情页修改,必填项合法输入,点击提交 |
提示提交成功 |
与预期结果一致 |
|
点击修改医生排班,必填项输入不合法,点击提交 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除医生排班,选择医生排班删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索医生排班,输入存在的医生排班名 |
查找出相应医生排班 |
与预期结果一致 |
|
点击搜索医生排班,输入不存在的医生排班名 |
不显示医生排班 |
与预期结果一致 |
本中西诊所管理系统开发与设计满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:
(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给用户带来了极大的方便。
(2)该中西诊所管理系统开发与设计内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。
经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进中西诊所管理系统的发展,发展前景广阔。
通过开发中西诊所管理系统,我深刻体会到软件开发的完整流程。首先,在确定开发目标后,我进行了详细的需求分析,明确了系统所需的各项功能。接下来,设计了系统的功能框架和数据库结构,包括实体和数据表的设计。随后,实现了各个功能模块的详细界面,并进行了全面的功能测试。尽管在这个过程中遇到了各种挑战,但通过反复分析和深入思考,借助相关文献和解决方案,成功地解决了这些问题,最终使中西诊所管理系统顺利运行。
虽然该系统在功能上基本满足了用户的需求,但仍有许多需要改进的地方。在接下来的开发阶段,计划进行以下改进:
用户界面设计:目前的操作页面虽然满足了简易操作的要求,但在多样化设计方面还有提升空间。我将考虑引入更多丰富的设计元素,使界面更加美观和用户友好。
安全性能优化:针对系统安全性能的增强,需要进一步优化系统的整体防护能力。具体而言,将要对程序退出的安全性进行加强,确保在退出过程中不存在数据泄露或系统不稳定的风险。同时,对系统的并发处理能力进行升级,以确保在高并发场景下系统能够保持稳定的运行状态。
性能优化:在性能优化方面,将着重于对程序的数据结构和代码逻辑进行精细化调整。通过优化,旨在确保系统能在高负载下保持稳定且高效的运行状态。优化后的系统应具备快速处理大量事务的能力,显著缩短事务处理时间,从而提高整体工作效率。同时,致力于降低服务器资源的占用率,以实现资源的高效利用和成本的有效控制。
通过这些改进,希望能够进一步提升中西诊所管理系统的用户体验和性能,使其更加贴合实际需求。
[1]高华.医院电子档案管理系统的设计与实施研究[J].兰台世界,2025,(01):128-130.DOI:10.16565/j.cnki.1006-7744.2025.01.30.
[2]Xiaoqian H .Application and Practice of Medical Record System in Hospital Information Management System[J].Scientific and Social Research,2024,6(12):296-302.
[3]张卫军,李云侠.医院综合信息管理系统的总体设计及实践研究[J].电子元器件与信息技术,2024,8(11):45-47.DOI:10.19772/j.cnki.2096-4455.2024.11.014.
[4]凌洋.基于JavaWeb技术的医院人事管理系统的设计与实现[J].现代计算机,2024,30(19):117-120.
[5]佘广南,赵雨,梅甜,等.医院智慧医务管理系统建设与应用[J].中国数字医学,2024,19(08):27-31.
[6]刘健.基于Java的医院后勤物资管理系统开发[J].无线互联科技,2024,21(12):76-79.
[7]黄俊霖.医院信息管理系统对改善医患关系的影响[J].信息与电脑(理论版),2024,36(11):212-214.
[8]黄娟.基于SpringBoot和Vue.js的医院数据提取管理平台的设计与实现[J].信息与电脑(理论版),2023,35(22):91-93.
[9]黄赛英.基于Springboot的医院档案管理系统设计[J].集成电路应用,2023,40(11):384-385.DOI:10.19339/j.issn.1674-2583.2023.11.176.
[10]沈志元,张文健.基于Java技术的医院管理系统的设计与实现[J].电脑知识与技术,2022,18(32):38-40+54.DOI:10.14004/j.cnki.ckt.2022.1994.
[11]王曼维,杨荻,李岩,等.基于SpringBoot框架的智慧医疗问诊系统设计与实现[J].中国医学装备,2022,19(03):133-136.
[12]巩蕾.医院挂号预约管理系统设计[J].电脑编程技巧与维护,2022,(02):66-68+80.DOI:10.16184/j.cnki.comprg.2022.02.033.
[13]左海维,梁港,王淋,等.基于WEB技术的社区医院信息系统的设计与实现[J].电子技术与软件工程,2021,(21):174-176.DOI:10.20109/j.cnki.etse.2021.21.059.
[14]常佳宁,潘琳.一种基于Web的医院挂号系统设计[J].中国科技信息,2021,(16):45-46.
[15]Cheng F .Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J].Advances in Educational Technology and Psychology,2021,5(2):
[16]胡小勇.基于SpringBoot的医院门诊管理信息系统的设计与实现[D].华中科技大学,2021.DOI:10.27157/d.cnki.ghzku.2021.001118.
[17]吴兵.基于WEB的医院管理信息系统的研究[J].信息技术与信息化,2021,(03):134-136.
[18]刘致放.医院基础信息自动化管理平台的设计与研究[J].电子世界,2020,(20):148-149.DOI:10.19353/j.cnki.dzsj.2020.20.066.
[19]刘璘.基于微信平台的医院就诊流程引导系统设计与研究[J].电脑编程技巧与维护,2020,(10):52-53+84.DOI:10.16184/j.cnki.comprg.2020.10.021.
[20]张毅.LM医院挂号预约系统的分析与设计[D].西安理工大学,2020.DOI:10.27398/d.cnki.gxalu.2020.001477.
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,是导师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设施能够完成离不开导师的帮助。在此,我对导师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。
再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
点赞+收藏+关注 →私信领取本源代码、数据库
关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!

被折叠的 条评论
为什么被折叠?



