springboot老年慢性病药物管理系统-计算机毕业设计源码70568

目录

摘要

Abstract

第一章 绪论

1.1 选题背景及意义

1.2 国内外研究现状

1.3 研究方法

第二章 相关技术介绍

2.1 MySQL简介

2.2 Java编程语言

2.3 B/S模式

2.4 springboot框架

第三章 老年慢性病药物管理系统 系统分析

3.1 系统目标

3.2 系统可行性分析

3.2.1 技术可行性

3.2.2 经济可行性

3.2.3 社会可行性

3.3 系统功能分析

3.3.1 功能性分析

3.3.2 非功能性分析

3.4 系统用例分析

3.5 本章小结

第四章 老年慢性病药物管理系统总体设计

4.1 系统架构设计

4.2 系统模块设计

4.3 数据库设计

4.3.1 数据库概念结构设计

4.3.2 数据库逻辑结构设计

4.4 本章小结

第五章 老年慢性病药物管理系统详细设计与实现

5.1 前端首页模块

5.2 用户注册模块

5.3 登录模块

5.4 前端患者用户功能模块

5.4.1 留言反馈模块

5.4.2 药品查询模块

5.4.3 个人中心模块

5.5 前端医生用户功能模块

5.5.1 个人中心模块

5.6 后端管理员功能模块

5.6.1 系统用户模块

5.6.2 电子病历管理模块

5.6.3 药品查询管理模块

5.6.4 系统管理模块

5.6.5 留言管理模块

5.6.6 日常记录管理模块

第六章 系统测试

6.1 系统测试的目的

6.2 测试用例

6.2.1 评论测试

6.2.2 创建数据测试 

6.2.3 修改数据测试 

6.2.4 查询数据测试 

6.3 测试结果

结论

参考文献

致  谢

摘要

本文主要介绍了基于SpringBoot框架的老年慢性病药物管理系统的设计与实现过程。该系统旨在提高老年慢性病患者的药物管理效率,减轻医护人员的工作负担,同时确保患者用药的安全性和有效性。

首先,我们对老年慢性病患者的药物管理需求进行了详细的分析,明确了系统的功能和特点。然后,我们采用了SpringBoot框架作为系统的开发基础。同时,我们结合了MySQL数据库和Java开发语言,实现了系统的数据存储和业务逻辑处理。

在系统的设计过程中,我们注重了系统的可扩展性、可维护性和易用性。通过合理的模块划分和接口设计,使得系统能够方便地与其他系统进行集成和扩展。同时,我们也充分考虑了用户的使用习惯和需求,设计了简洁明了的操作界面和友好的交互方式。

在实现过程中,我们采用了分层架构的设计思想,将系统的不同功能模块进行了划分和封装,提高了系统的可维护性和可扩展性。同时,我们也注重了代码的质量和可读性,采用了规范的编码风格和注释方式,使得代码易于阅读和维护。

以上是基于SpringBoot的老年慢性病药物管理系统的设计与实现的摘要内容。该系统的设计和实现过程充分体现了SpringBoot框架的优势和特点,为类似系统的开发提供了有益的参考和借鉴。

关键词:老年慢性病药物管理系统;SpringBoot框架

Abstract

This paper mainly introduces the design and implementation process of the drug management system for elderly chronic diseases based on the SpringBoot framework. The system aims to improve the efficiency of drug management in elderly patients with chronic diseases, and reduce the work burden of medical staff, while ensuring the safety and effectiveness of medication for patients.

First, we conducted a detailed analysis of the drug management needs of elderly patients with chronic diseases, clarifying the functions and characteristics of the system. Then, we adopted the SpringBoot framework as the development of the system. At the same time, we combined the MySQL database and the Java development language to implement the systematic data storage and the processing of business logic.

In the design process of the system, we focus on the scalability, maintainability and ease of use. Through reasonable module division and interface design, the system can be easily integrated and expand with other systems. At the same time, we also fully consider the user's use habits and needs, designed a simple and clear operation interface and friendly interaction mode.

In the implementation process, we adopted the design idea of hierarchical architecture, divide and encapsulate the different functional modules of the system, and improve the maintainability and scalability of the system. At the same time, we also focus on the quality and readability of the code, using the standard coding style and annotation method to make the code easy to read and maintain.

The above is a summary of the design and implementation of the elderly chronic disease drug management system based on SpringBoot. The design and implementation process of this system fully embodies the advantages and characteristics of the SpringBoot framework, and provides a useful reference and reference for the development of similar systems.

Keywords: chronic disease drug management system for the elderly; SpringBoot framework

随着我国人口老龄化趋势的加剧,老年慢性病患者数量不断增加,给医疗系统带来了巨大的挑战。同时,老年慢性病患者的药物管理也是一个重要的问题,因为老年患者常常需要同时服用多种药物,药物之间的相互作用和剂量调整都需要医生进行精确的判断和管理。因此,开发一套适合老年慢性病患者的药物管理系统具有重要的现实意义和社会价值。

本文旨在设计和实现一套基于SpringBoot框架的老年慢性病患者药物管理系统,旨在提高老年患者药物管理的效率和质量,减轻医务人员的工作负担,同时确保患者的用药安全和有效性。该系统的设计和实现可以为类似系统的开发提供有益的参考和借鉴,推动医疗信息化的发展和应用。

    1. 国内外研究现状

随着医疗信息化的发展,药物管理系统在国内外得到了广泛的研究和应用。在国外,一些发达国家已经建立了完善的药物管理系统,实现了药品信息的数字化管理、用药监控和预警等功能。例如,美国的电子病历系统已经实现了与药品管理系统的无缝对接,医生可以通过系统直接查询患者的用药记录,并根据患者的用药情况调整治疗方案。同时,一些国外的研究机构也在不断探索新的药物管理技术和方法,如基于大数据的药物使用分析、基于人工智能的用药推荐等。

在国内,药物管理系统的研究和应用也取得了长足的进展。近年来,随着医疗信息化政策的推动和医疗机构的数字化转型,越来越多的医疗机构开始引进和应用药物管理系统。这些系统不仅可以实现药品信息的数字化管理,还可以进行用药监控、用药提醒、药物配伍禁忌检查等功能,大大提高了药物管理的效率和质量。同时,国内的一些学者也在不断探索新的药物管理技术和方法,如基于云计算的药物管理系统、基于移动设备的用药提醒等。

然而,当前的药物管理系统还存在一些问题。首先,一些系统的功能较为单一,无法满足老年慢性病患者复杂多样的用药需求。其次,一些系统的用户界面不够友好,操作复杂,不利于老年患者的使用。最后,一些系统的可扩展性和可维护性较差,不能满足医疗机构不断变化的业务需求。

因此,本文旨在设计和实现一套功能全面、操作简便、可扩展性强的老年慢性病患者药物管理系统,以满足老年患者和医疗机构的需求,推动医疗信息化的发展和应用。

    1. 研究方法

首先,通过引擎搜索或者查阅相关文献资料,了解了本系统开发的背景及意义和国内外研究现状,收集用户需求信息。其次,在开发工具上,最终确定是基于Mysql数据库,在Java的springboot框架设计的基础上实现,设计出系统大致的功能模块。主要从方便系统用户和系统管理员的角度进行分析,明确该系统应该具有的功能。最终是测试系统,通过用例测试发现存在的问题并找到解决的方案。利用现有的开发平台,结合自己所学的知识,在老师的指导帮助下来完成该设计,确保系统的可用性、实用性。

MySQL是一个关系型数据库管理系统(RDBMS),由瑞典的MySQL AB公司开发,现在属于Oracle公司旗下产品。它使用结构化查询语言(SQL)进行数据库管理。MySQL是最流行的关系型数据库管理系统之一,尤其在WEB应用方面表现出色。

MySQL的主要特点包括:

1.关系型数据库:它使用表格来存储数据,每个表格都有行和列,行代表记录,列代表字段。这种结构使得数据的管理和查询变得非常高效。

2.SQL语言:MySQL使用SQL语言进行数据操作,这是一种非常强大且通用的语言,可以用于创建、修改、查询和删除数据库中的数据。

3.开源和免费:MySQL是开源的,意味着任何人都可以查看、修改和分发其源代码。此外,社区版是免费的,适合中小型网站的开发。

4.高效和稳定:MySQL的设计注重性能和稳定性,即使在处理大量数据时也能保持高效的性能。

5.支持多种平台:MySQL可以在多种操作系统上运行,包括Windows、Linux、Mac OS等。

6.可扩展性:MySQL支持各种扩展功能,如复制、分区、集群等,使得数据库可以适应不同的应用场景。

总的来说,MySQL是一个功能强大、易于使用且高度灵活的数据库管理系统,广泛应用于各种类型的网站和应用中。

    1. Java编程语言

Java是一种广泛使用的编程语言,由Sun Microsystems公司(现在属于Oracle公司)的James Gosling在1991年创建。Java是一种面向对象的编程语言,它旨在提供一个平台无关的编程模型,让编写的程序能够在任何支持Java的平台上运行。

1. 跨平台性:Java通过Java虚拟机(JVM)实现了跨平台性。JVM是一个在特定硬件和操作系统上运行的软件,它能够将Java字节码转换为机器代码并执行。因此,只要安装了JVM,Java程序就可以在任何平台上运行。

2. 面向对象:Java是一种纯粹的面向对象语言,支持类和对象的概念,以及继承、多态等面向对象的特性。

3. 静态类型:Java是一种静态类型语言,所有的变量在声明时都需要指定类型,并且类型在程序运行期间不能改变。

4. 垃圾回收:Java提供了自动的内存管理和垃圾回收机制,程序员无需手动管理内存。

5. 安全性:Java被设计为一种安全的语言,具有多种防止错误和恶意代码的机制,如类型检查、访问控制等。

6. 多线程:Java内置了多线程支持,可以方便地编写并发和分布式程序。

7. 丰富的API:Java拥有庞大的标准库和第三方库,提供了丰富的API供程序员使用,包括文件操作、网络编程、数据库连接、图形界面开发等。

Java广泛应用于企业级应用、Web开发、移动应用开发、嵌入式系统、大数据处理等多个领域。

    1. B/S模式

B/S模式,全称为Browser/Server(浏览器/服务器模式),也被称为B/S结构,是WEB兴起后的一种网络结构模式。

B/S模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。在这种模式中,客户机上只需要安装一个浏览器,如Chrome、Safari、Microsoft Edge、Netscape Navigator或Internet Explorer等,而服务器则安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server同数据库进行数据交互。

此外,B/S模式是一种基于浏览器和服务器的应用程序架构,也被称为Web应用程序开发模式。该模式将应用程序的业务逻辑和数据处理都放在服务器端完成,而客户端只需要通过浏览器来访问服务器。这种模式实现了跨平台、跨操作系统和分布式计算等特点,主要依赖于Web技术,如HTML、CSS、JavaScript等,以及Web服务器、数据库等后端技术。

与传统的C/S(Client/Server)开发模式相比,B/S开发模式可以减少客户端的安装和维护工作,提高了应用程序的可移植性和易用性,适合于大规模企业级应用的开发。

    1. springboot框架

SpringBoot框架是由Pivotal团队提供的一个全新框架,旨在简化新Spring应用的初始搭建以及开发过程。它并不是一门新技术,而是将之前常用的Spring、SpringMVC、data-jpa等常用的框架封装到了一起,帮助开发者隐藏这些框架的整合细节,实现敏捷开发。

SpringBoot框架的特点包括:

1. 不需要模板化的配置:SpringBoot项目通过特定的方式进行配置,使开发人员不再需要定义样板化的配置。

2. 自动整合第三方框架:在SpringBoot中整合第三方框架时,只需要导入相应的starter依赖包,就自动整合了。

3. 配置文件的简化:SpringBoot默认只有一个.properties的配置文件,不推荐使用xml,后期会采用.java的文件去编写配置信息。

此外,SpringBoot框架是构建微服务框架SpringCloud的基础。因此,对于想要从事快速应用开发或微服务开发的开发者来说,掌握SpringBoot框架是非常重要的。

  • 老年慢性病药物管理系统 系统分析

本章内容概括了老年慢性病药物管理系统系统目标、可行性分析、功能分析以及用例分析。

    1. 系统目标

老年慢性病药物管理系统的核心目标是优化老年人慢性病的药物治疗过程,确保用药安全、有效和便捷。

    1. 系统可行性分析
      1. 技术可行性

老年慢性病药物管理系统的技术可行性非常高。首先,现代的信息技术已经发展到了非常成熟的阶段,特别是数据库技术、网络技术和移动应用技术等,都为开发这样一个系统提供了强大的技术支持。其次,市场上已经存在许多类似的管理软件,这些软件的成功案例和技术实现方式可以为我们的系统开发提供借鉴和参考。最后,我们的团队具有丰富的软件开发经验和技术实力,能够确保系统的顺利开发和稳定运行。

      1. 经济可行性

从经济角度来看,老年慢性病药物管理系统也具有很高的可行性。首先,系统的开发成本相对较低,因为我们可以借鉴已有的技术和框架,避免重复开发。其次,系统的运行和维护成本也不高,因为我们可以采用云计算等技术,实现系统的自动化和智能化管理。最后,系统的使用将大大提高医疗资源的利用效率,减少医疗浪费,从而为医疗机构和社会带来经济效益。

      1. 社会可行性

社会可行性方面,老年慢性病药物管理系统也具有很大的优势。首先,系统的使用将大大提高老年人的用药安全性和有效性,改善他们的生活质量。其次,系统的推广使用将有助于推动医疗信息化和智能化的发展,提高医疗服务的水平和效率。最后,系统的实施也将为医疗机构和社会创造更多的就业机会和经济效益。

    1. 系统功能分析
      1. 功能性分析

老年慢性病药物管理系统我划分为了前端模块和后端模块两大部分。

前端患者用户模块:

  1. 注册登录:患者用户可以通过注册功能创建个人账户,之后可以使用用户名和密码登录系统。注册登录功能确保了患者用户信息的安全性和隐私性,同时也便于患者用户管理自己的个人信息和查询记录。
  2. 首页:首页是患者用户最常访问的页面,我们在这里整合了药品查询和推荐功能。患者用户可以根据药品名称、用途、适用症状等关键词查询药品信息,系统也会根据患者的历史查询记录和收藏情况,推荐相关药品,帮助患者更快速、更准确地找到适合自己的药品。
  3. 留言反馈:留言反馈功能允许患者用户对药品管理系统提出自己的意见和建议,以及对药品使用过程中的问题进行咨询。系统管理员会定期查看并回复这些留言,以确保患者用户的留言反馈被及时解决。
  4. 药品查询:在药品查询页面,我们提供了点赞、收藏、评论等交互功能。患者用户可以对药品进行点赞,表示认可或喜欢;也可以将药品收藏到自己的个人账户中,方便日后查看;同时,患者用户还可以发表评论,分享自己的用药体验和评价,为其他患者提供参考。
  5. 我的账户:我的账户页面是患者用户管理自己个人信息的重要平台。在这里,患者用户可以查看和编辑自己的个人信息,如姓名、性别、年龄、联系方式等;还可以修改登录密码,确保账户的安全性。
  6. 个人中心:个人中心是患者用户的个人空间,这里整合了多个实用功能。个人首页展示了患者的基本信息和健康数据;电子病历功能允许患者上传和管理自己的病历资料;病历更新功能则方便患者随时更新自己的病情和治疗进展;日常记录功能可以帮助患者记录每日的健康状况和生活习惯;收藏功能则让患者可以随时查看自己收藏的药品和文章。

前端医生用户模块

  1. 注册登录:注册登录模块是前端医生用户模块的基础功能,它允许医生用户进行账号的创建和登录。通过注册,用户可以拥有属于自己的个人账户,享受个性化的服务。登录功能则确保用户信息的安全性,确保用户能够顺利访问和使用系统中的各项功能。
  2. 首页:首页是医生用户登录后首先看到的界面,也是系统的核心功能之一。药品查询推荐模块会根据医生的查询历史和偏好,智能推荐相关的药品信息,帮助医生快速找到所需的药品。同时,首页还会展示最新的药品资讯和行业动态,帮助医生保持对药品市场的了解。
  3. 留言反馈:留言反馈功能允许医生用户对药品管理系统提出自己的意见和建议。系统管理员会定期查看并回复这些留言,以确保医生用户的留言反馈被及时解决。
  4. 药品查询:药品查询模块是医生用户最常用的功能之一。在此模块中,用户可以根据药品名称、成分、适用症状等关键词进行搜索,获取详细的药品信息。同时,用户还可以对药品进行点赞、收藏和评论操作,方便自己日后的查阅和参考。
  5. 我的账户:我的账户模块是医生用户管理个人信息的重要平台。在此模块中,用户可以查看和修改自己的个人信息,如姓名、联系方式等。同时,用户还可以修改自己的登录密码,确保账户的安全性。
  6. 个人中心:个人中心模块是医生用户的个人工作平台。在个人首页中,用户可以快速查看自己的工作任务和进度。电子病历模块则允许用户创建和管理患者的病历信息,方便医生进行诊断和治疗。病历更新模块则允许医生随时更新患者的病历信息,确保信息的实时性和准确性。日常记录模块则帮助医生记录自己的日常工作和生活,如患者会诊、手术记录等。留言反馈模块则允许医生与其他用户或系统进行沟通交流。收藏模块则允许医生收藏自己常用的药品信息或资料,方便日后的查阅和使用。

后端管理员模块:

  1. 登录:登录功能是管理员进入后台管理界面的第一步,通过输入正确的用户名和密码,管理员可以安全地访问后台管理系统,开始进行各项管理工作。系统会对输入的用户名和密码进行验证,确保只有授权的管理员才能访问后台。
  2. 后台首页:后台首页是管理员进入后台后首先看到的页面,它展示了系统的主要功能和最新的数据概览。管理员可以在这里快速了解系统的整体运行状态,以及各个模块的最新动态。
  3. 系统用户:系统用户模块允许管理员管理系统中的所有用户,包括管理员、患者用户和医生用户。管理员可以在此模块中添加新用户、删除用户、修改用户信息以及查询用户信息,确保系统的用户数据准确无误。
  4. 电子病历管理:电子病历管理模块是管理员管理患者病历的重要工具。管理员可以在此模块中添加新的病历记录、删除不再需要的病历、查询特定病历、查看病历详情以及更新病历信息。此外,管理员还可以进行日常病历的更新管理,确保病历信息的实时性和准确性。
  5. 病历更新管理:病历更新管理模块是管理员监控和管理病历更新情况的重要工具。在这个模块中,管理员可以实时查看哪些病历有最新的更新记录,包括更新的时间、更新的内容以及更新的用户。这有助于管理员确保病历信息的及时性和准确性,以便医生能够基于最新的信息进行诊断和治疗。
  6. 药品查询管理:药品查询管理模块允许管理员对系统中的药品信息进行管理。管理员可以添加新的药品信息、删除不再需要的药品信息、查询特定药品信息以及查看药品的详情和评论。这有助于管理员及时了解和更新药品信息,确保患者能够获取到准确的药物信息。
  7. 病症类型管理:病症类型管理模块是管理员管理系统中所有病症类型的地方。管理员可以在此模块中添加新的病症类型、删除不再需要的病症类型、查询特定病症类型以及查看病症类型的详情。这有助于维护系统的病症类型数据的完整性和准确性。
  8. 日常记录管理:日常记录管理模块允许管理员对系统中的日常记录进行管理。管理员可以删除不再需要的日常记录、查询特定日常记录以及查看日常记录的详情。这有助于管理员了解系统的日常运行情况,及时发现问题并进行处理。
  9. 系统管理:允许管理员上传、删除和修改系统中的轮播图,以展示给前台用户。这有助于管理员根据需求调整系统的展示效果。
  10. 留言管理:留言管理模块是管理员处理用户留言反馈的地方。管理员可以在此模块中查看用户留言、回复用户留言以及删除不再需要的留言。这有助于管理员及时了解用户的反馈和需求,提升用户体验和服务质量。
      1. 非功能性分析

老年慢性病药物管理系统的非功能性需求比如老年慢性病药物管理系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等,具体可以表示在如下3-1表格中:

3-1老年慢性病药物管理系统非功能需求表

安全性

主要指老年慢性病药物管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指老年慢性病药物管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响老年慢性病药物管理系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着老年慢性病药物管理系统的页面展示内容进行操作,就可以了。

可维护性

老年慢性病药物管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

    1. 系统用例分析

老年慢性病药物管理系统的完整UML用例图分别是图3-1、3-2、3-3。

患者用户角色用例如图3-1所示。

图 3-1老年慢性病药物管理系统患者用户角色用例图

医生用户角色用例如图3-2所示。

图 3-2老年慢性病药物管理系统医生用户角色用例图

管理员角色用例如图3-3所示。

图 3-3老年慢性病药物管理系统管理员角色用例图

    1. 本章小结

本章主要通过对老年慢性病药物管理系统的、系统目标、可行性分析、功能需求分析、系统用例分析,确定整个老年慢性病药物管理系统要实现的功能。同时也为老年慢性病药物管理系统的代码实现和测试提供了标准。

本章主要讨论的内容包括老年慢性病药物管理系统的功能模块设计、数据库系统设计。

    1. 系统架构设计

本老年慢性病药物管理系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图 4-1老年慢性病药物管理系统架构设计图

表现层(UI):也称为用户界面层,它负责与用户进行直接的交互。一个优秀的UI设计能够显著提升用户的体验,确保用户在使用老年慢性病药物管理系统时感到舒适和便捷。为了确保良好的兼容性,UI界面设计需要适应不同版本的平台和各种屏幕尺寸的分辨率。此外,UI交互功能必须合理设计,确保用户的操作能够得到相应的反馈和结果,这要求表现层与业务逻辑层之间保持良好的通信和协同工作。

业务逻辑层(BLL):这一层主要处理老年慢性病药物管理系统的数据和业务逻辑。当用户通过表现层提交数据时,业务逻辑层会接收这些数据,进行处理,并将结果传递给数据层进行存储或查询。同时,当系统需要从数据层读取数据时,业务逻辑层会处理这些数据,并将其传递给表现层进行展示。

数据层(DL):虽然本老年慢性病药物管理系统的数据存储在服务端的MySQL数据库中,但数据层仍然作为一个独立的部分存在。它的主要功能是存储和管理老年慢性病药物管理系统的数据。数据层与MySQL数据库进行交互,执行数据的增、删、改、查等操作,确保数据的完整性和安全性。

这三个层次相互独立但又紧密协作,共同构成了老年慢性病药物管理系统的完整架构。通过合理的分层设计,可以提高系统的可维护性、可扩展性和可重用性,为用户提供更好的服务和体验。

    1. 系统模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本老年慢性病药物管理系统中的用例。那么接下来就要开始对本老年慢性病药物管理系统的架构、主要功能和数据库开始进行设计。老年慢性病药物管理系统根据前面章节的需求分析得出,老年慢性病药物管理系统的功能模块图如下图所示。

图 4-2老年慢性病药物管理系统功能模块图

    1. 数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

      1. 数据库概念结构设计

下面是整个老年慢性病药物管理系统中主要的数据库表总E-R实体关系图。

图 4-3老年慢性病药物管理系统总E-R关系图

      1. 数据库逻辑结构设计

通过上一小节中老年慢性病药物管理系统中总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

用户编号:

表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

更新时间:

表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:

表daily_records (日常记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

daily_records_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

patients_age

varchar

64

0

Y

N

患者年纪

5

patient_gender

varchar

64

0

Y

N

患者性别

6

diagnostic_diseases

varchar

64

0

Y

N

诊断病类

7

record_date

date

10

0

Y

N

记录日期

8

blood_pressure_data

int

10

0

Y

N

0

血压数据

9

blood_glucose_data

int

10

0

Y

N

0

血糖数据

10

heart_rate_data

int

10

0

Y

N

0

心率数据

11

other_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

更新时间

表disease_type (病症类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

disease_type_id

int

10

0

N

Y

病症类型ID

2

type_name

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

更新时间

表doctor_users (医生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

doctor_users_id

int

10

0

N

Y

医生用户ID

2

doctors_name

varchar

64

0

Y

N

医生姓名

3

doctors_phone_number

varchar

64

0

Y

N

医生电话

4

doctors_gender

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

更新时间

表drug_inquiry (药品查询)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

drug_inquiry_id

int

10

0

N

Y

药品查询ID

2

drug_name

varchar

64

0

Y

N

药品名称

3

drug_images

varchar

255

0

Y

N

药品图片

4

indicative_diseases

varchar

64

0

Y

N

主治病类

5

shelf_life

varchar

64

0

Y

N

保质期限

6

current_inventory

int

10

0

Y

N

0

目前库存

7

manufacturer

varchar

64

0

Y

N

生产厂家

8

function_introduction

text

65535

0

Y

N

功效介绍

9

instructions_for_use

text

65535

0

Y

N

使用说明

10

hits

int

10

0

N

N

0

点击数

11

praise_len

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

更新时间

表electronic_medical_records (电子病历)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

electronic_medical_records_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_phone_number

varchar

64

0

Y

N

患者电话

5

patient_address

varchar

64

0

Y

N

患者地址

6

id_number

varchar

64

0

Y

N

身份证号

7

patients_age

varchar

64

0

Y

N

患者年纪

8

patient_gender

varchar

64

0

Y

N

患者性别

9

diagnostic_diseases

varchar

64

0

Y

N

诊断病类

10

inspection_report

varchar

255

0

Y

N

检查报告

11

medical_record_certificate

varchar

255

0

Y

N

病历证明

12

treatment_plan

varchar

64

0

Y

N

治疗方案

13

description_of_the_condition

text

65535

0

Y

N

病情叙述

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

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:

表medical_record_updates (病历更新)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

medical_record_updates_id

int

10

0

N

Y

病历更新ID

2

doctor_users

int

10

0

Y

N

0

医生用户

3

doctors_name

varchar

64

0

Y

N

医生姓名

4

doctors_phone_number

varchar

64

0

Y

N

医生电话

5

patient_users

int

10

0

Y

N

0

患者用户

6

patient_name

varchar

64

0

Y

N

患者名字

7

patients_age

varchar

64

0

Y

N

患者年纪

8

patient_gender

varchar

64

0

Y

N

患者性别

9

diagnostic_diseases

varchar

64

0

Y

N

诊断病类

10

this_report

varchar

255

0

Y

N

本次报告

11

improvement_plan

varchar

64

0

Y

N

改善方案

12

doctors_note

text

65535

0

Y

N

医生备注

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表message (留言板)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

message_id

int

10

0

N

Y

留言板ID:

2

user_id

int

10

0

N

N

0

用户ID:

3

title

varchar

64

0

Y

N

标题:

4

content

longtext

2147483647

0

N

N

内容:

5

nickname

varchar

32

0

N

N

昵称:

6

avatar

varchar

255

0

Y

N

头像:

7

email

varchar

125

0

Y

N

留言者邮箱

8

phone

varchar

11

0

Y

N

留言者手机号码

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

11

reply

longtext

2147483647

0

Y

N

回复

12

reply_state

tinyint

4

0

Y

N

0

回复状态

表patient_users (患者用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

patient_users_id

int

10

0

N

Y

患者用户ID

2

patient_name

varchar

64

0

Y

N

患者名字

3

patient_phone_number

varchar

64

0

Y

N

患者电话

4

patient_address

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

更新时间

表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已取消

表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

更新时间:

表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

email

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

会员折扣

表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

更新时间:

    1. 本章小结

整个老年慢性病药物管理系统的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

老年慢性病药物管理系统的详细设计与实现主要是根据前面的老年慢性病药物管理系统的需求分析和老年慢性病药物管理系统的总体设计来设计页面并实现业务逻辑。主要从老年慢性病药物管理系统界面实现、业务逻辑实现这两部分进行介绍。

    1. 前端首页模块

首页是患者用户最常访问的页面,我们在这里整合了药品查询和推荐功能。患者用户可以根据药品名称、用途、适用症状等关键词查询药品信息,系统也会根据患者的历史查询记录和收藏情况,推荐相关药品,帮助患者更快速、更准确地找到适合自己的药品。前台首页模块展示如下图所示。

图 5-1前台首页模块图

    1. 用户注册模块

不是老年慢性病药物管理系统中正式用户的是可以在线进行注册的,当填写上自己的账号+设置密码+确认密码+昵称+邮箱+手机号+身份+用户姓名+用户性别等信息后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。用户注册流程图如下所示。

图 5-2 注册流程图

其用户注册模块展示如下图所示。

图 5-3注册模块图

注册代码如下:

  /

     * 注册

     * @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);

}

    1. 登录模块

老年慢性病药物管理系统中的前台上注册后的用户是可以通过自己的用户名+密码进行登录的,当用户输入完整的自己的用户名+密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的用户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到老年慢性病药物管理系统的首页中;否则将会提示相应错误信息,用户登录流程图如下所示。

图 5-4 用户登录流程图

登录模块如下图所示。

图 5-5登录模块图

登录代码如下:

/

     * 登录

     * @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, "账号或密码不正确");

        }

    }

    1. 前端患者用户功能模块
      1. 留言反馈模块

留言反馈:留言反馈功能允许患者用户对药品管理系统提出自己的意见和建议,以及对药品使用过程中的问题进行咨询。系统管理员会定期查看并回复这些留言,以确保患者用户的留言反馈被及时解决。留言反馈模块如下图所示:

图 5-6留言反馈模块图

      1. 药品查询模块

药品查询:在药品查询页面,我们提供了点赞、收藏、评论等交互功能。患者用户可以对药品进行点赞,表示认可或喜欢;也可以将药品收藏到自己的个人账户中,方便日后查看;同时,患者用户还可以发表评论,分享自己的用药体验和评价,为其他患者提供参考。药品查询模块如下图所示。

图 5-7药品查询模块图

      1. 个人中心模块

个人中心:个人中心是患者用户的个人空间,这里整合了多个实用功能。个人首页展示了患者的基本信息和健康数据;电子病历功能允许患者上传和管理自己的病历资料;病历更新功能则方便患者随时更新自己的病情和治疗进展;日常记录功能可以帮助患者记录每日的健康状况和生活习惯;收藏功能则让患者可以随时查看自己收藏的药品和文章。患者用户个人中心模块如下图所示。

图 5-8患者用户个人中心模块图

    1. 前端医生用户功能模块
      1. 个人中心模块

个人中心:个人中心模块是医生用户的个人工作平台。在个人首页中,用户可以快速查看自己的工作任务和进度。电子病历模块则允许用户创建和管理患者的病历信息,方便医生进行诊断和治疗。病历更新模块则允许医生随时更新患者的病历信息,确保信息的实时性和准确性。日常记录模块则帮助医生记录自己的日常工作和生活,如患者会诊、手术记录等。留言反馈模块则允许医生与其他用户或系统进行沟通交流。收藏模块则允许医生收藏自己常用的药品信息或资料,方便日后的查阅和使用。医生用户个人中心模块如下图所示:

图 5-9医生用户个人中心模块图

    1. 后端管理员功能模块
      1. 系统用户模块

系统用户:系统用户模块允许管理员管理系统中的所有用户,包括管理员、患者用户和医生用户。管理员可以在此模块中添加新用户、删除用户、修改用户信息以及查询用户信息,确保系统的用户数据准确无误。系统用户管理流程图如下所示。

图 5-10用户管理流程图

系统用户模块如下图所示。

图 5-11系统用户模块图

      1. 电子病历管理模块

电子病历管理:电子病历管理模块是管理员管理患者病历的重要工具。管理员可以在此模块中添加新的病历记录、删除不再需要的病历、查询特定病历、查看病历详情以及更新病历信息。此外,管理员还可以进行日常病历的更新管理,确保病历信息的实时性和准确性。电子病历管理模块如下图所示。

图 5-12电子病历管理模块

      1. 药品查询管理模块

药品查询管理:药品查询管理模块允许管理员对系统中的药品信息进行管理。管理员可以添加新的药品信息、删除不再需要的药品信息、查询特定药品信息以及查看药品的详情和评论。这有助于管理员及时了解和更新药品信息,确保患者能够获取到准确的药物信息。药品查询管理模块如下图所示。

图 5-13药品查询管理模块

      1. 系统管理模块

系统管理:系统管理功能中,管理员主要负责轮播图的管理,包括上传、修改和删除轮播图,以维护系统的外观和用户体验。轮播图管理模块如下图所示。

图 5-14轮播图管理模块图

      1. 留言管理模块

留言管理:留言管理模块是管理员处理用户留言反馈的地方。管理员可以在此模块中查看用户留言、回复用户留言以及删除不再需要的留言。这有助于管理员及时了解用户的反馈和需求,提升用户体验和服务质量。留言管理模块如下图所示。

图 5-15留言管理模块图

      1. 日常记录管理模块

日常记录管理:日常记录管理模块允许管理员对系统中的日常记录进行管理。管理员可以删除不再需要的日常记录、查询特定日常记录以及查看日常记录的详情。这有助于管理员了解系统的日常运行情况,及时发现问题并进行处理。日常记录管理模块如下图所示。

图 5-16日常记录管理模块图

  • 系统测试

在系统开发的流程中,前台、后台以及数据库的建设只是整个项目的基础构建部分,完成了这些仅仅意味着系统框架的搭建告一段落。然而,一个系统的真正成熟与稳定,关键在于其是否能经受住严格的测试。测试是系统开发流程中不可或缺的一环,它对于确保系统质量至关重要。

    1. 系统测试的目的

一个系统测试的目的就是检验系统在真正的工作环境和条件下是不是能够正常运行,各种功能能不能符合设计的要求,通过测试发现系统当中存在的一些潜在的错误,然后对系统进行改进,使得系统最终以完美的形式展现给用户,提高用户使用过程中的体验度,真正达到项目的实际使用目的。

    1. 测试用例
      1. 评论测试

评论测试用例如表6-1 所示。

表6-1 评论测试用例

测试用例编号

YL_03

测试用例名称

系统使用者进行在线评论

测试用例描述

使用者输入评论内容等信息

系统入口

浏览器

步骤

预期结果

实际结果

输入完整的评论内容

提示“评论成功”,并进入系统

预期结果

不输入的评论内容

提示“请输入完整”

预期结果

      1. 创建数据测试 

在系统中,创建功能也是基础功能之一,因此创建功能的测试很有代表性。在此章节主要列举在创建时各种情况下系统结果的测试。由于系统涉及创建功能操作过多,因此将多处统称创建功能。

创建数据用例如表6-2 所示。

表6-2 创建数据测试用例

测试用例编号

YL_05

测试用例名称

系统使用者进行创建数据

测试用例描述

使用者输入要创建的数据

系统入口

浏览器

步骤

预期结果

实际结果

输入完整并且格式正确的数据

提示“创建成功”,并显示所有数据

预期结果

核心位置数据但非必要位置不输入数据

提示“创建成功”,并显示所有数据

预期结果

核心数据位置不输入数据

提示“创建失败”

预期结果

      1. 修改数据测试 

在系统中,修改功能是系统主要实现功能,因此修改功能的测试很有代表性。在此章节主要列举在修改时各种情况下系统结果的测试。由于系统涉及修改功能操作过多,因此将多处数据表记录修改和状态修改统称修改功能。

修改数据用例如表6-3所示。

表6-3 修改数据测试用例

测试用例编号

YL_06

测试用例名称

系统使用者进行修改数据

测试用例描述

使用者对可修改的数据项进行修改

系统入口

浏览器

步骤

预期结果

实际结果

将现有数据修改成正确的数据

提示“修改成功”,并显示所有数据

预期结果

将现有数据修改成错误的数据

提示“修改失败”

预期结果

      1. 查询数据测试 

在系统中,查询功能是使用系统使用最多也是最基础的功能,因此查询功能的测试很有代表性。在此章节主要列举在查询时各种情况下系统结果的测试。

查询数据用例如表6-4所示。

表6-4 查询数据测试用例

测试用例编号

YL_05

测试用例名称

系统使用者进行查询数据

测试用例描述

全部查询以及输入关键词查询

系统入口

浏览器

步骤

预期结果

实际结果

界面自动查询全部

显示对应所有记录

预期结果

输入已存在且能匹配成功的关键字

显示所查询到的数据

预期结果

输入不存在的关键字

显示数据界面为空

预期结果

    1. 测试结果

在本次测试的过程主要针对所有功能下的添加操作,修改操作和删除操作,并以真实数据一一进行相关功能项目的输入,最终能够保证每个项目涉及的功能都能够正常运行,因此能够保证本次设计的,已实现的功能能够正常运行并且相关数据库的信息也同样保证正确。

结论

经过深入研究与分析,我们明确了基于Java和MySQL数据库的老年慢性病药物管理系统的可行性。该系统结合Java与MySQL技术,实现了高效的老年慢性病药物管理系统。通过本次开发实践,我们深刻认识到学习的无止境和实践的重要性。尽管在初期遇到了如页面显示不规范、数据库连接问题以及参数传递困难等挑战,但通过查阅资料和团队协作,我们成功解决了这些问题。在此过程中,我们积累了丰富的知识和问题解决能力,尤其是学会了如何从海量信息中筛选出有价值的内容。

我们意识到,尽管理论知识是宝贵的,但每个人的编程思路和数据处理方法各不相同。因此,实践成为了找到解决方案的关键。在毕业设计过程中,我们不断提升自我,积累了丰富的经验,这将对未来的职业发展产生积极影响。

在开发老年慢性病药物管理系统的过程中,我们参考了众多相关系统的成功案例,取其精华、去其糟粕,逐步完善了系统功能。然而,该系统仍存在诸多不足,需要我们在后续的学习中不断改进。实践表明,老年慢性病药物管理系统具有广阔的发展前景。经过严格的测试与运行,该系统功能完善、界面美观、操作简便,技术理论上已趋成熟。

参考文献

  1. 曹正. 临床药师指导对老年慢性病患者合理用药及依从性的影响分析 [J]. 中国现代药物应用, 2024, 18 (06): 160-163.
  2. 迟晨汝,周志庆,刘欢,等. 老年慢性病住院患者服药依从性现状及影响因素研究 [J]. 包头医学院学报, 2024, 40 (03): 60-64.
  3. 李雨晴,张艳,景丽伟,等. 老年慢性病共病病人治疗负担现状和影响因素分析 [J]. 循证护理, 2024, 10 (04): 700-704.
  4. 文皓,汪世秀,吕静,等. 老年慢性病患者医院-家庭过渡期安全用药管理的研究进展 [J]. 护理学杂志, 2023, 38 (19): 117-121.
  5. 廖小丽. 药师干预对长期口服药物治疗的老年慢性病患者的管理效果 [J]. 基层医学论坛, 2023, 27 (25): 133-135.
  6. 刘莎,谢贵阳. 老年慢性病患者药物自我管理行为水平与药物不良事件发生的关系分析 [J]. 中国药物滥用防治杂志, 2023, 29 (06): 974-977.
  7. 郭姣姣,刘方,张春慧,等. 老年慢性病共病患者参与药物管理体验的现象学研究 [J]. 军事护理, 2023, 40 (03): 19-22.
  8. 冯书云,陈朋举,王宁,等. 老年慢性病患者合作药物治疗管理模式的探索(英文) [J]. Journal of Chinese Pharmaceutical Sciences, 2022, 31 (11): 866-876.
  9. 毛佳伊,黄欢欢,周婷婷,等. 智能药物管理系统在老年慢性病患者住院-居家过渡期的应用 [J]. 护理学报, 2022, 29 (21): 74-78.
  10. 毛佳伊. 智能药物管理系统优化及在老年慢性病患者住院-居家中的应用研究[D]. 重庆医科大学, 2022.
  11. 王玥坤,宋娟,冷静. 基于药物治疗管理和欧洲药学监护联盟分类系统对老年慢性病患者开展持续性药学监护实践 [J]. 医学研究生学报, 2021, 34 (12): 1298-1303.
  12. 孙迪,孙家驹. 药师在老年慢病患者药物治疗管理中的作用 [J]. 中医药管理杂志, 2021, 29 (17): 85-86.
  13. 邹胜泽,罗哲婵. 自我管理教育在临床药物管理中的实践 [J]. 中医药管理杂志, 2020, 28 (08): 123-124.
  14. 张萍,杨春芸,张丹霞,等. 同伴支持管理对提高老年慢性病患者自我就医与服用药物行为的价值 [J]. 中医药管理杂志, 2019, 27 (18): 143-144.  
  15. 江国粹. 基于高阶思维能力培养的“MySQL数据库技术”课程教学改革研究 [J]. 安徽电子信息职业技术学院学报, 2024, 23 (01): 39-43.
  16. Xiao Z ,Ali Y ,Xin W , et al. Sports Work Strategy of College Counselors Based on MySQL Database Big Data Analysis [J]. International Journal of Information Technology and Web Engineering (IJITWE), 2023, 18 (1): 1-14
  17. 赵彩霞,张栽培,杨璇. 基于Java编程导航学习平台开发设计的研究 [J]. 家电维修, 2024, (03): 62-64
  18. Zamroni A ,Boer M ,Butet A N , et al. Kinship relationship of Uroteuthis chinensis in the waters of western Kalimantan and northern Java based on morphometric characters and genetic structure [J]. Regional Studies in Marine Science, 2024, 72 103442-.
  19. 雷欣,马宏琳,郑霖,等. 基于SpringBoot的域名信息系统设计与实现 [J]. 电脑知识与技术, 2024, 20 (05): 44-47.
  20. Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):

致  谢

老年慢性病药物管理系统设计与实现工作已结束,虽然过程中充满挑战,但内心充满自豪和满足。感谢大学四年间教导我的所有老师,他们的专业知识与人生智慧让我成长为能独立完成系统的学生。特别感谢指导老师,他耐心解答疑惑,引导我解决问题,提升自主解决能力。室友和同学们的宝贵建议和支持也让我取得长足进步。未来,我将继续努力追求卓越,不辜负所学所悟和老师期望。坚信坚定信念和不懈努力,未来定能取得更辉煌成就。期待更美好未来!

此外,老年慢性病药物管理系统设计与实现不仅是技术挑战,挫折和困难是成长的垫脚石,让我更深入理解问题,精确找到解决方案。每次解决问题,都感到满足和自豪。

对于未来,我充满期待和信心。无论道路多崎岖,只要保持坚定信念,持续努力,定能取得更大成就。期待将知识和技能运用到实际中,为社会做出更大贡献。

最后,感谢所有帮助和支持我的人。你们的教诲、鼓励和支持让我有今天的成就。我会继续努力,不辜负期望,为实现更美好的未来而奋斗。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/801019.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SIP消息结构详解

SIP协议的消息由三部分构成&#xff0c;分别是起始行&#xff08;请求行状态行)、消息头和消息体&#xff08;正文&#xff09; 一&#xff0e;起始行 1. 请求消息起始行 起始行&#xff1a;由方法名、请求URI和协议版本组成&#xff0c;自身内部用逗号分割&#xff0c;三者之…

小试牛刀-Telebot区块链游戏机器人

目录 1.编写目的 2.实现功能 2.1 Wallet功能 2.2 游戏功能 2.3 提出功能 2.4 辅助功能 3.功能实现详解 3.1 wallet功能 3.2 游戏功能 3.3 提出功能 3.4 辅助功能 4.测试视频 Welcome to Code Blocks blog 本篇文章主要介绍了 [Telebot区块链游戏机器人] ❤博主…

Vue3 前置知识

1. Vue3 简介 2020年9月18日&#xff0c;Vue.js发布版3.8版本&#xff0c;代号&#xff1a;one Piece(海贼王)经历了&#xff1a;4800次提交、40个RFC、600次PR、300贡献者官方发版地址&#xff1a;Release v3.0.0 One Piecevuejs/,core截止2023年10月&#xff0c;最新的公开版…

nginx基本概念和安装

一. 简介 1.1 是什么 nginx是一个高性能的HTTP和反向代理web服务器&#xff0c;是一款轻量级的Web服务器/反向代理服务器/电子邮件(IMAP/POP3)代理服务器&#xff0c;在BSD-like协议下发行&#xff0c;特点是占有内存少&#xff0c;并发能力强。ngnix专为性能优化而开发&#…

【TES807】 基于XCKU115 FPGA的双FMC接口万兆光纤传输信号处理平台

板卡概述 TES807是一款基于千兆或者万兆以太网传输的双FMC接口信号处理平台。该平台采用XILINX的Kintex UltraSacle系列FPGA&#xff1a;XCKU115-2FLVF1924I作为主处理器&#xff0c;FPGA外挂两组72位DDR4 SDRAM&#xff0c;用来实现超大容量数据缓存&#xff0c;DDR4的最高数据…

【软件测试】编写测试用例篇

前面部分主要是编写测试用例的方法和方向&#xff0c;后面一部分是编写出具体的测试用例 目录 什么是测试用例 1.设计测试用例的万能公式 1.1.从思维出发 1.2.万能公式 1.3.弱网测试 1.4.安装与卸载测试 2.设计测试用例的方法 2.1.基于需求的设计方法 2.2.等价类 2.3…

【Git分支管理】分支合并冲突及其解决

目录 0.合并冲突 1.创建和切换dev1 ​2.dev1 bbb on dev branch ​3.master ccc on dev branch 4.dev1和master合并冲突 5.合并冲突解决 ​6.git log查看合并流程图 先提交再合并 0.合并冲突 在使用git进行合并操作的时候&#xff0c;在合并两个分支的时候就有可能出…

【EXCELL技巧篇】使用Excel公式,获取当前 Excel的Sheet页的名字

【通知】&#xff1a; 正式跟大家说个难过的消息&#xff0c;本来在「中国朝代史」结束后&#xff0c;开启的下一个专栏「中国近代史」前面几期做的还好好的&#xff0c;可是今天起正式通知审核不过&#xff0c;因为一些原因。 其实我对于历史这一块我还是很感兴趣的&#xff0…

13、Shell自动化运维编程基础

弋.目录 RHCE板块一、为什么学习和使用Shell编程二、Shell是什么1、shell起源2、查看当前系统支持的shell3、查看当前系统默认shell4、Shell 概念 三、Shell 程序设计语言1、Shell 也是一种脚本语言2、用途 四、如何学好shell1、熟练掌握shell编程基础知识2、建议 五、Shell脚本…

海外媒体投稿:精准定位目标受众!掌握这5个软文代发推广要点

在当今互联网时代&#xff0c;软文代发成为了一种常见的推广手段。要想取得成功&#xff0c;就需要掌握精准定位目标受众这一关键要素。本文将介绍5个软文代发推广要点&#xff0c;帮助读者了解如何更好地利用软文代发来吸引目标受众。 软文代发要点 1. 熟悉目标受众 在进行软…

怎麼使用指紋流覽器Hubstudio促進跨境電商業務?

指紋流覽器是一種基於流覽器指紋技術開發的工具&#xff0c;能夠模擬不同的流覽器環境和指紋資訊&#xff0c;實現多個帳號的同時登錄和管理。此項技術提升了帳號的安全性&#xff0c;同時顯著降低了帳號被封禁的風險。指紋流覽器通常用於隱私保護、安全性增強、多帳號管理、數…

房地产市场2024年展望——深度解读行业趋势

作为一名有十多年经验的地产营销人&#xff0c;对于2024年房地产行业的发展趋势&#xff0c;我认为可以从以下几个方面来探讨&#xff0c;如果觉得对你有帮助&#xff0c;请不吝一个三连&#xff08;赞同喜欢收藏&#xff09; 一、市场调整与分化加剧 在经历了较长时间的市场…

Python excel知识库批量模糊匹配的3种方法实例(fuzzywuzzy\Gensim)

前言 当然&#xff0c;基于排序的模糊匹配&#xff08;类似于Excel的VLOOKUP函数的模糊匹配模式&#xff09;也属于模糊匹配的范畴&#xff0c;但那种过于简单&#xff0c;不是本文讨论的范畴。 本文主要讨论的是以公司名称或地址为主的字符串的模糊匹配。 使用编辑距离算法进…

ATFX集团高层受到中国驻约旦大使馆经商处接见

全球领先的差价合约经纪商ATFX宣布&#xff0c;在全球扩张、深耕区域市场与本地化运营的战略指导下&#xff0c;公司深耕区域市场方面取得显著进展&#xff0c;在中东市场&#xff0c;其高层更是获得了中国驻约旦大使馆经商处的特别接见。近日&#xff0c;在中国驻约旦哈希姆王…

【计算机网络】学习指南及导论

个人主页&#xff1a;【&#x1f60a;个人主页】 系列专栏&#xff1a;【❤️计算机网络】 文章目录 前言我们为什么要学计算机网络&#xff1f;计算机网络概述计算机网络的分类按交换技术分类按使用者分类按传输介质分类按覆盖网络分类按覆盖网络分类 局域网的连接方式有线连接…

更新:彩虹云商城系统 自助下单免授权无后门源码(修复完整版)

源码简介&#xff1a; 最新更新彩虹云商城系统&#xff0c;自助下单免授权无后门源码&#xff08;修复完整版&#xff09; 自助下单彩虹云商城系统。这玩意儿不简单&#xff0c;它是高效稳定的电商平台&#xff01;免授权源码版本&#xff0c;灵活方便。源码是用PHP语言写的。…

十五、C++11常用新特性—Lambda表达式

1.基本 这个好像是很好用的&#xff0c;其有以下有点&#xff1a; 声明式的编程风格&#xff1a;直接匿名定义目标函数或函数对象&#xff0c;不需要额外写一个命名函数或函数对象。简洁&#xff1a;避免了代码膨胀和功能分散&#xff0c;让开发更加高效。在需要的时间和地点…

Java实现经纬度坐标转换---CGCS2000坐标、gps84 、GCJ-02、 BD-09

Java实现经纬度坐标转换 目录 一、坐标系统简介1.经纬度坐标系2.坐标系统3.坐标转换简介 二、地图经纬度转换工具类&#xff08;CGCS2000坐标 与 WGS84坐标 互转&#xff09;1.对于 CGCS2000 需要引入 proj4j依赖&#xff1a;2.坐标转换工具类 三、地图经纬度转换工具类(gps84 …

【Linux】多线程_7

文章目录 九、多线程8. POSIX信号量根据信号量环形队列的生产者消费者模型代码结果演示 未完待续 九、多线程 8. POSIX信号量 POSIX信号量和SystemV信号量作用相同&#xff0c;都是用于同步操作&#xff0c;达到无冲突的访问共享资源目的。 但POSIX可以用于线程间同步。 创建…

38 IRF+链路聚合+ACL+NAT组网架构

38 IRF链路聚合ACLNAT组网架构 参考文献 34 IRF的实例-CSDN博客 35 解决单条链路故障问题-华三链路聚合-CSDN博客 36 最经典的ACL控制-CSDN博客 37 公私网转换技术-NAT基础-CSDN博客 32 华三vlan案例STP-CSDN博客 一 网络架构 二 采用的技术 1 vlan 2 ip 3 stp 4 链…