药店管理系统--毕设附源码83928

目  录

摘  要

Abstract

1  绪  论

1.1 研究背景与意义

1.2 国内外现状研究

1.3  主要研究内容

2 相关技术介绍

2.1  Java语言

2.2  Spring Boot框架

2.3  B/S体系结构

2.4  MySQL数据库

3 系统分析

3.1  可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.1.4 社会可行性

3.2  系统功能分析

3.2.1  功能性分析

3.2.2  非功能性分析

3.3  系统用例分析

3.4  本章小结

4  系统流程分析

4.1  程序操作流程

4.1.1  登录流程

4.1.2  注册流程

4.2 系统设计

4.2.1 总体设计

4.2.2 框架设计

4.2.3功能模块设计

4.2.4  数据库概念结构设计

4.2.5  数据库逻辑结构设计

4.3  本章小结

5  系统详细设计与实现

5.1  顾客用户功能模块

5.1.1  首页

5.1.2  用户注册

5.1.3  用户登录

5.1.4  购买药品

5.2  店员用户功能模块

5.2.1  添加药品信息

5.3  后台管理功能模块

5.3.1  系统用户

5.3.2  通知公告管理

5.3.3  轮播图管理

6  系统测试

6.1  系统测试目的

6.2  功能测试用例

6.3  测试结果

结  论

参考文献

致 谢

  

随着药店业务扩展,传统管理模式已无法满足高效运营需求。为此,开发了一个基于Spring Boot的药店管理系统,采用Java语言和MySQL数据库,结合前后端分离技术,确保高效性和可扩展性。顾客用户可以访问首页、查看通知公告、浏览新闻资讯、查询药品信息并管理个人账户;店员用户负责处理订单、管理药品库存和采购记录;管理员则拥有全面权限,包括系统用户管理、药品信息维护及系统配置等。

顾客用户能够注册登录、浏览药品详情、在线购买药品并进行健康咨询,支持点赞、收藏和评论功能,提升用户体验。店员用户可以查看药品库存状态、处理订单,并提供库存预警功能,确保及时补充药品。管理员通过后台集中监控关键指标如销售额和库存状况,生成销售报表辅助决策。

该系统的实施显著提升了药店的运营效率和管理水平。系统的数据分析功能提供了实时、准确的经营数据,助力科学决策。系统的透明度和可追溯性增强了客户满意度和信任度。最终,药店管理系统帮助优化库存管理,提升服务质量,实现业务增长和服务质量的全面提升,为客户提供了更加便捷和个性化的服务体验。这样的一体化平台使得药店运营更加顺畅,服务更加贴心。

关键词:药店管理系统;Spring Boot框架;MySQL数据库

Abstract

With the expansion of pharmacy business, traditional management models are no longer able to meet the needs of efficient operation. To this end, a pharmacy management system based on Spring Boot was developed, using Java language and MySQL database, combined with front-end and back-end separation technology to ensure efficiency and scalability. Customer users can access the homepage, view notifications and announcements, browse news and information, query drug information, and manage personal accounts; Shop assistants are responsible for processing orders, managing drug inventory, and keeping purchase records; Administrators have comprehensive permissions, including system user management, drug information maintenance, and system configuration.

Customer users can register and log in, browse drug details, purchase drugs online, and conduct health consultations. It supports liking, bookmarking, and commenting functions to enhance the user experience. Shop assistant users can view the inventory status of drugs, process orders, and provide inventory warning functions to ensure timely replenishment of drugs. Administrators centrally monitor key indicators such as sales revenue and inventory status through the backend, and generate sales reports to assist decision-making.

The implementation of this system has significantly improved the operational efficiency and management level of pharmacies. The data analysis function of the system provides real-time and accurate business data to assist in scientific decision-making. The transparency and traceability of the system enhance customer satisfaction and trust. Ultimately, the pharmacy management system helps optimize inventory management, improve service quality, achieve comprehensive improvement in business growth and service quality, and provide customers with a more convenient and personalized service experience. This integrated platform makes pharmacy operations smoother and services more attentive.

Keywords: Pharmacy Management System; Spring Boot framework; MySQL database

1  绪  论

1.1 研究背景与意义

随着社会经济的发展和人们生活水平的提高,药品的需求量逐年上升,药店作为药品流通的重要环节,承担着为公众提供安全、有效的药品和健康服务的职责。传统的药店管理模式往往依赖手工记录和纸质文件,导致数据管理不规范、信息传递不及时和资源浪费等问题。这些问题不仅影响了药店的运营效率,也对顾客的服务体验造成了负面影响。

在信息技术迅速发展的背景下,现代药店管理系统的需求日益突出。基于Spring Boot的药店管理系统能够有效整合药品管理、库存管理、销售管理和客户服务等多个功能模块,实现信息的实时更新与共享,从而提高药店的运营效率和服务质量。同时,Spring Boot框架以其简洁、易于使用和高效的特性,成为开发企业级应用的首选技术之一。

因此,设计与实现一个基于Spring Boot的药店管理系统,不仅能够提升药店的管理水平,还能为顾客提供更便捷的服务,符合当前社会对医药服务行业数字化转型的需求。这一课题的研究和实施将为药店行业的发展提供新的思路和解决方案。

基于Spring Boot的药店管理系统的研究具有重要的实际意义。首先,随着药品需求的增加和管理复杂性的提升,传统的手工管理模式已无法满足现代药店的运营需求。通过引入基于Spring Boot的管理系统,药店能够实现信息的实时更新与共享,显著提高管理效率,并降低人力成本,为药店的可持续发展奠定基础。

其次,该系统不仅能够优化药品的库存管理和销售记录,还能有效整合顾客信息。这种集成化管理将提升顾客服务体验,使药店能够提供更个性化的服务和准确的药品信息,从而增强顾客满意度和忠诚度。这一过程有助于药店在竞争激烈的市场环境中脱颖而出。

最后,基于Spring Boot的药店管理系统促进了药店的数字化转型。随着信息技术的迅猛发展,药店行业迫切需要适应新的管理模式。该系统为药店提供了智能化的管理解决方案,推动健康服务体系的建设,增强社区的医疗服务能力。

1.2 国内外现状研究

基于Spring Boot的药店管理系统的研究在国内外都得到了广泛关注。在国外,随着信息技术的迅速发展,许多药店管理系统已经实现了数字化和自动化。国外的研究主要集中在利用人工智能和大数据分析技术来提升药品供应链管理效率、优化库存以及改善顾客服务体验。这些系统通常具有较高的智能水平,能够实时处理大量数据,为决策提供数据支持。

在国内,药店管理系统的研究和应用也逐渐增多。近年来,随着医疗体制改革和药品零售市场的开放,越来越多的药店开始重视信息化管理。国内的研究多侧重于构建基于云计算和移动互联网的管理平台,以提升药店运营效率和顾客体验。然而,整体上仍存在系统功能不够全面、数据互通性差等问题,制约了药店管理数字化转型的进程。

综上所述,虽然国内外在药店管理系统的研究方面已取得了一定的成果,但仍需加强系统集成和智能化水平的提升。基于Spring Boot的药店管理系统可以利用其快速开发和高效性能的优势,推动国内药店管理系统的进一步创新与应用,从而提高行业的整体管理水平和服务质量。

1.3  主要研究内容

开发与设计基于Spring Boot的药店管理系统的主要目标是设计并实现一个高效、稳定的药店管理系统,旨在提升药店的管理效率和顾客服务质量。系统将根据功能划分为顾客、药店管理人员和管理员三个角色,其中顾客的主要功能是通过网站或移动应用进行药品查询、购买、健康咨询等;药店管理人员主要负责药品的库存管理、销售记录、进货管理等;管理员功能有用户管理(包括管理员和顾客的用户注册、登录、权限分配等)、药品管理(药品的入库、出库、库存查询、库存预警等)、销售管理(销售记录、销售统计、销售报表生成等)、采购管理(采购计划制定、采购订单管理、供应商管理等)、健康咨询(提供在线健康咨询功能,顾客可咨询药师相关问题)、数据维护(系统数据的备份、恢复、日志管理等),以实现信息的实时更新和共享,从而支持药店的数字化转型。

2 相关技术介绍

2.1  Java语言 

Java是一种跨平台的编程语言,广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。在药店管理系统中,Java通常用于后端开发,提供强大的处理能力和稳定性。同时Java是一种面向对象的编程语言,支持封装、继承和多态等特性,使代码更易于维护和重用。还拥有丰富的标准库和第三方框架,如Spring、Hibernate等,可以大大提高开发效率。

2.2  Spring Boot框架

Spring Boot是一个用于构建微服务的Java框架,简化了Spring应用程序的开发和部署过程。Spring Boot通过自动配置和约定优于配置的理念,简化了Spring应用程序的开发过程,使开发者可以更快地构建和部署应用程序;拥有丰富的生态系统,如Spring Cloud、Spring Security等,可以满足各种企业级应用的需求。在药店管理系统中,Spring Boot可以帮助开发团队快速搭建后端服务,并实现各种功能模块的集成和管理。

2.3  B/S体系结构

B/S模式(Browser/Server模式)是一种网络应用架构,其中浏览器(Browser)作为客户端与服务器(Server)进行通信。这种模式下,用户通过Web浏览器访问系统,无需在本地安装额外的客户端软件,极大地提升了系统的易用性和可访问性。服务器端则集中处理所有的业务逻辑和数据存储,确保了数据的一致性和安全性。B/S模式还使得系统的维护和升级变得更加简单,因为所有的更新都可以在服务器端进行,用户端无需做任何改变。此外,该模式还支持多用户并发访问,使得系统能够满足大量用户对药店管理系统信息的查询、浏览和交互需求。因此,B/S模式的选择为药店管理系统的广泛应用和高效运行提供了坚实的技术基础。

2.4  MySQL数据库

MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在药店管理系统中,MySQL可以用于数据存储、数据查询和数据管理等方面,用户可以免费使用和修改源代码,为平台提供可靠和高性能的数据库支持。MySQL支持多种存储引擎,如InnoDB和MyISAM,可以根据不同的应用场景选择合适的存储引擎,以提高性能;提供了多种数据安全机制,如用户权限管理、数据加密和备份恢复等,确保数据的安全性。

3 系统分析

3.1  可行性分析

3.1.1 技术可行性

从技术角度来看,Spring Boot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。

3.1.2 经济可行性

该系统采用Spring Boot框架进行开发,具有开发周期短、成本低、易于维护等优点。同时,系统采用B/S架构设计,用户端无需安装额外的软件,降低了用户的成本。此外,系统还可以提高药店管理系统的管理效率和质量,降低管理成本,为的药店管理系统保护和传承工作提供有力的支持。因此,从经济角度来看,该系统具有较高的可行性。

3.1.3 操作可行性

该系统采用B/S(Browser/Server)架构设计,用户只需通过Web浏览器即可访问系统,无需安装额外的客户端软件,操作简便、界面友好,用户可轻松上手。系统提供了直观、易用的用户界面,包括药店管理系统的录入、分类、展示、查询等功能模块,用户可以方便地录入和查询药店管理系统的相关信息,进行数据的增删改查等操作。同时,系统还提供了详细的操作指南和帮助文档,进一步降低了用户的操作难度。

3.1.4 社会可行性

该系统旨在实现对药店管理系统的全面、系统、科学的管理和保护,符合当前社会对药店管理系统保护和传承的迫切需求。通过该系统,可以实现对药店管理系统的数字化存储和管理,提高管理效率和质量,为公众提供更加便捷、直观的了解和体验途径。同时,该系统还可以为药店管理系统的传承人提供交流和学习的平台,促进药店管理系统的传承和创新发展,具有重要的社会意义和文化价值。

综上所述,基于Spring Boot的药店管理系统在技术、操作、社会和经济四个方面都具有较高的可行性,能够为的药店管理系统保护和传承工作提供有力的信息化支持。

3.2  系统功能分析

3.2.1  功能性分析

药店管理系统旨在通过针对不同角色设置的功能模块,实现对药店管理系统业务的全方位、精细化管理。系统主要涵盖顾客用户、店员用户和管理员三大角色,各角色的功能模块相互配合,共同保障药店管理流程的高效、规范运行。

(1)顾客用户功能

1.注册与登录:提供便捷的手机号、邮箱注册及第三方登录(如微信、支付宝),并通过验证码验证确保账户安全。

2.首页:展示个性化推荐内容、最新促销信息和健康资讯,通过轮播图和热门活动吸引顾客深入探索。

3.通知公告:发布网站公告、关于我们、联系方式和介绍,帮助顾客及时了解药店动态和服务信息。

4.新闻资讯:提供丰富的健康相关文章,并支持点赞、收藏、发表评论和推荐热门文章,促进用户互动和分享。

5.药品信息:详细列出所有在售药品的信息,包括成分、功效、使用方法等,并支持点赞和收藏功能方便顾客查找。

6.我的账户:允许顾客查看和编辑个人信息,包括修改密码、更新联系方式,并管理支付方式和地址簿,确保个人信息的安全与便捷管理。

7.个人中心:提供历史订单记录、购物车管理、收藏夹和个人资料概览,帮助顾客轻松跟踪自己的购买历史和偏好设置。

8.药品购买:实现在线选购药品的功能,支持多种支付方式,并提供药品配送服务选择送货时间和地址。

9.健康咨询:为顾客提供专业的健康咨询服务,解答用药或保健方面的疑问,并支持在线咨询医生获取专业建议。

10.收藏:允许顾客收藏感兴趣的药品或文章,并提供分类管理功能,便于日后查阅和管理。

11.评论管理:顾客可以对自己购买的药品或阅读的文章进行评价和评论,同时也能查看和回复他人的评论,系统会对评论进行审核确保内容合规。

(2)店员用户功能

1.注册与登录:店员通过特定的身份验证流程注册和登录系统,支持多级权限管理确保操作的安全性和准确性。

2.我的账户:店员可以查看和编辑个人资料,包括工作绩效、培训记录等,确保个人信息准确无误并及时更新。

3.个人首页:展示任务分配情况、完成进度和重要通知,帮助店员高效管理日常工作并保持与团队的良好沟通。

4.药品信息:店员可以查看和更新药品库存状态,确保药品信息的准确性和及时性。

5.药品购买:店员负责处理顾客订单,记录销售数据,并提供库存预警功能,确保及时补充缺货药品。

6.采购信息:负责药品的采购计划制定和供应商沟通,确保库存充足,并提供采购记录管理便于后续审计和分析。

7.健康咨询:直接回答顾客提出的健康问题,或将问题转交给专业人员处理,提供常见问题库快速响应顾客疑问。

8.供应商信息:维护详细的供应商列表,包括联系方式、供货能力和评价功能,定期评估合作效果确保服务质量。

9.收藏:店员可以管理用户的收藏项,查看和编辑用户收藏的药品或文章,以便更好地了解顾客偏好。

10.评论管理:店员能够审核和回复顾客对药品或文章的评论,确保评论内容的质量和合规性。

(3)管理员功能

1.后台首页:集中显示关键指标如销售额、用户增长数和库存状况,提供自定义仪表盘功能根据需求调整展示内容。

2.系统用户管理:全面管理不同类型的用户(管理员、顾客用户、店员用户),包括权限分配、账号冻结等功能,并支持批量导入导出用户数据。

3.药品信息管理:添加、编辑和删除药品信息,确保数据库准确性和及时性,并提供药品分类管理功能便于用户查找和浏览。

4.药品购买管理:监控和分析药品销售情况,优化库存策略,并提供销售报表生成工具便于数据分析和决策支持。

5.采购信息管理:跟踪采购订单状态,确保供应链顺畅运行,并提供采购成本分析工具帮助降低采购成本。

6.健康咨询管理:发布权威的健康咨询内容,审核用户提交的问题和答案,保证信息的专业性和可靠性,并提供健康知识库方便用户查询和学习。

7.供应商信息管理:维护详细的供应商档案,定期评估其服务质量和合作潜力,并提供供应商合同管理功能确保合作合法合规。

8.系统管理:例如轮播图管理用于首页展示广告或重要通知配置,并提供系统设置功能如界面风格、语言选择等。

9.通知公告管理:发布重要通知和活动信息,保持与顾客的良好沟通,并支持定时发布功能提前安排通知发布计划。

10.资源管理:分类和整理新闻资讯,便于顾客浏览,并提供内容审核机制确保发布内容的质量。

11.操作日志:记录所有重要的系统操作,为审计和故障排查提供依据,并提供日志查询和导出功能便于后续分析和处理。

3.2.2  非功能性分析

非功能性分析旨在评估系统的非功能需求和性能要求。通过对性能、可靠性、安全性、可用性和扩展性等方面进行评估,确保平台能够满足用户和系统运行的要求。具体如下:

3-1药店管理系统非功能需求表

需求类型

描述

性能

系统应具有高性能,能够快速响应用户请求,保持稳定的性能水平,支持高并发访问和大规模数据处理。

可靠性

系统应具有高可靠性,确保系统稳定运行,防止系统故障和数据丢失,提供数据备份和恢复机制。

安全性

系统应具有高安全性,保护用户隐私信息和数据安全,采用加密传输技术、访问控制和身份验证机制。

可用性

系统应具有高可用性,保证系统全天候运行,最大限度减少系统故障和维护时间,提供灾备和故障转移功能。

易用性

系统应具有良好的易用性,用户界面设计友好,操作简单直观,提供清晰的指导和帮助文档。

可维护性

系统应具有良好的可维护性,易于维护和升级,提供模块化和结构化代码,方便开发人员进行维护和修改。

可扩展性

系统应具有良好的可扩展性,支持新增功能和模块的集成,具备良好的架构设计和扩展性能。

3.3  系统用例分析

系统用例分析是对系统中各个功能模块的用户需求和行为进行分析,以识别和描述不同的用户用例。通过系统用例分析,可以深入了解用户在平台上的操作流程和交互方式,为系统设计和开发提供指导,并确保平台能够满足用户的需求和期望。

(1)顾客用户角色用例图如下图所示。

图3-1 顾客用户角色用例图

(2)店员用户角色用例图如下图所示。

图3-2 店员用户角色用例图

(3)管理员角色用例图如下图所示。

图3-3 管理员角色用例图

3.4  本章小结

本章重点在对系统进行了可行性、功能需求、系统用例以及系统流程分析,旨在明确平台的功能要求。这些分析为系统的开发和测试提供了指导和标准,确保系统设计和实施符合用户需求。通过详细的分析,可以有效规划平台功能的实现方式,提供清晰的指引。同时,这些分析也有助于确保代码实现的质量和系统的稳定性,为系统的顺利上线和运行奠定基础。

4  系统流程分析

4.1  程序操作流程

在用户访问平台网站,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入系统功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

图4-1程序操作流程图

4.1.1  登录流程

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

图4-2 登录流程图

4.1.2  注册流程

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

 图4-3 注册流程图

4.2 系统设计

4.2.1 总体设计

4.2.2 框架设计

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

图4-4系统架构图

             

4.2.3功能模块设计

底功能模块设计是系统开发过程中的重要阶段,它旨在将系统划分为不同的模块,每个模块负责完成特定的功能或任务。药店管理系统由多个功能模块组成,每个模块下又包含具体的功能操作。

功能模块图如下图所示。

                   

  图4-5系统功能模块图

4.2.4  数据库概念结构设计

数据库概念结构设计主要涉及数据库的实体和实体之间的关系。通过实体-关系模型或者其他适当的模型,我将定义系统中涉及的各个实体以及它们之间的联系。下面我将罗列主要的实体属性图和系统E-R图。

药店管理系统总体E-R图如下图所示。

4-6  总体E-R图

4.2.5  数据库逻辑结构设计

数据库逻辑结构设计则是在概念结构的基础上,进行具体的数据库表设计。我们将定义每个表的结构、字段和约束,并建立表与表之间的关系。

表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

用户编号:

表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

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

更新时间:

表code_token

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

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

表customer_users (顾客用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

customer_users_id

int

10

0

N

Y

顾客用户ID

2

customer_name

varchar

64

0

Y

N

顾客姓名

3

customer_gender

varchar

64

0

Y

N

顾客性别

4

contact_information

varchar

16

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_information (药品信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

drug_information_id

int

10

0

N

Y

药品信息ID

2

drug_name

varchar

64

0

Y

N

药品名称

3

drug_pictures

varchar

255

0

Y

N

药品图片

4

drug_number

varchar

64

0

Y

N

药品编号

5

drug_selling_price

double

9

2

Y

N

0.00

药品售价

6

drug_inventory

double

9

2

Y

N

0.00

药品库存

7

drug_introduction

longtext

2147483647

0

Y

N

药品简介

8

hits

int

10

0

N

N

0

点击数

9

praise_len

int

10

0

N

N

0

点赞数

10

collect_len

int

10

0

N

N

0

收藏数

11

comment_len

int

10

0

N

N

0

评论数

12

drug_purchase_limit_times

int

10

0

N

N

0

购买限制次数

13

procurement_information_limit_times

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

更新时间

表drug_purchase (药品购买)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

drug_purchase_id

int

10

0

N

Y

药品购买ID

2

customer_users

int

10

0

Y

N

0

顾客用户

3

customer_name

varchar

64

0

Y

N

顾客姓名

4

drug_name

varchar

64

0

Y

N

药品名称

5

drug_number

varchar

64

0

Y

N

药品编号

6

drug_selling_price

double

9

2

Y

N

0.00

药品售价

7

purchase_quantity

double

9

2

Y

N

0.00

购买数量

8

purchase_amount

varchar

64

0

Y

N

购买金额

9

purchase_date

date

10

0

Y

N

购买日期

10

remarks_information

text

65535

0

Y

N

备注信息

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

13

source_table

varchar

255

0

Y

N

来源表

14

source_id

int

10

0

Y

N

来源ID

15

source_user_id

int

10

0

Y

N

来源用户

表health_consultation (健康咨询)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

health_consultation_id

int

10

0

N

Y

健康咨询ID

2

customer_users

int

10

0

Y

N

0

顾客用户

3

customer_name

varchar

64

0

Y

N

顾客姓名

4

consultation_time

date

10

0

Y

N

咨询时间

5

consultation_content

text

65535

0

Y

N

咨询内容

6

reply_content

text

65535

0

Y

N

回复内容

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表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

更新时间:

表operation_log (操作日志表)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

operation_log_id

int

10

0

N

Y

操作日志ID

2

user_group

varchar

64

0

Y

N

用户角色

3

user_name

varchar

64

0

Y

N

用户账号

4

routes

varchar

64

0

Y

N

模块名称

5

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

6

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

表procurement_information (采购信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

procurement_information_id

int

10

0

N

Y

采购信息ID

2

shop_assistant_user

int

10

0

Y

N

0

店员用户

3

shop_assistant_name

varchar

64

0

Y

N

店员姓名

4

drug_name

varchar

64

0

Y

N

药品名称

5

drug_number

varchar

64

0

Y

N

药品编号

6

supplier_name

varchar

64

0

Y

N

供应商名称

7

drug_prices

double

9

2

Y

N

0.00

药品价格

8

purchase_quantity

double

9

2

Y

N

0.00

采购数量

9

purchase_amount

varchar

64

0

Y

N

采购金额

10

purchase_date

date

10

0

Y

N

采购日期

11

remarks_information

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

更新时间

14

source_table

varchar

255

0

Y

N

来源表

15

source_id

int

10

0

Y

N

来源ID

16

source_user_id

int

10

0

Y

N

来源用户

表schedule (日程管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间

表score (评分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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:

表shop_assistant_user (店员用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

shop_assistant_user_id

int

10

0

N

Y

店员用户ID

2

shop_assistant_name

varchar

64

0

Y

N

店员姓名

3

employee_gender

varchar

64

0

Y

N

店员性别

4

contact_information

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

更新时间

表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

更新时间:

表supplier_information (供应商信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

supplier_information_id

int

10

0

N

Y

供应商信息ID

2

supplier_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

更新时间

表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

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

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

创建时间:

表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

更新时间:

4.3  本章小结

数据库设计是系统开发中的关键步骤,通过识别实体、建立关系、设计表结构、选择主键和索引等方式,确保数据存储和管理的有效性和一致性。同时,考虑安全性和性能优化,采用合适的规范化和反规范化技术,以提高系统的响应速度和用户体验。综合以上因素,数据库设计为系统的稳定运行和高效管理提供了基础支持。

5  系统详细设计与实现

系统关键模块设计与实现是系统开发中的核心任务。通过分析需求,设计和实现关键模块,确保系统功能的完整性和稳定性。在设计过程中,需要考虑模块之间的交互和数据流动,合理选择技术和框架,并进行测试和优化,以确保关键模块的高效运行和用户满意度。

5.1  顾客用户功能模块

5.1.1  首页

首页为用户提供了一个直观、友好的界面,展示最新的新闻资讯、网站公告和推荐的药店管理。首页还包含搜索栏,方便用户快速查找所需药品。主界面展示如下图所示。

图5-1 首页界面图

5.1.2  用户注册

用户通过填写必要的信息,如用户名、密码、邮箱和手机号码等,完成注册。系统会对输入信息进行验证,确保其有效性和唯一性。其界面展示如下图所示。

图5-2 用户注册界面图

用户注册的关键代码如下:

       @PostMapping("register")

    public Map<String, Object> signUp(HttpServletRequest request) throws IOException {

        Map<String, String> query = new HashMap<>();

        Map<String,Object> map = service.readBody(request.getReader());

        query.put("username",String.valueOf(map.get("username")));

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

}

5.1.3  用户登录

用户需输入用户名和密码进行身份验证。系统会对输入的凭据进行检查,确保其与注册信息匹配。登录成功后,用户将进入个人中心,可以查看购买记录、管理收藏和评论。其界面如下图所示。

图5-3登录界面图

用户登录的关键代码如下:

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

        QueryWrapper wrapper = new QueryWrapper<User>();

        Map<String, String> map = new HashMap<>();               

5.1.4  购买药品

用户可在药品列表中浏览各类药品,通过搜索功能快速定位所需药品。点击药品详情,查看全面信息,包括功效、用法用量等。确认购买后,加入购物车,输入数量,提交订单。系统引导用户完成支付流程,支持多种支付方式。购买成功,用户可实时查看订单状态,包括发货、物流信息,确保购药体验流畅、安心。其界面如下图所示。

图5-4 购买药品界面图

购买药品关键代码如下:

@PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        Map<String,Object> paramMap = service.readBody(request.getReader());

        this.addMap(paramMap);

        return success(1);

}

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

5.2  店员用户功能模块

5.2.1  添加药品信息

药店管理系统的添加药品信息功能是店员用户的关键操作之一。通过这一功能,店员可以将新的药店管理详细信息录入系统。这包括药品的名称、成分、功效、用法用量、注意事项、保质期等关键数据。其界面如下图所示。

图5-5 添加药品信息界面图

添加药品信息的关键代码如下:

    @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        Map<String,Object> paramMap = service.readBody(request.getReader());

        this.addMap(paramMap);

        return success(1);

}

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

5.3  后台管理功能模块

5.3.1  系统用户

管理员可在此添加、编辑、删除管理员、顾客用户和店员用户账户,同时设定不同用户的角色和权限级别。通过直观的用户界面,管理员能轻松查询用户信息,如重置密码、激活或禁用账户等。这一功能确保系统用户管理的高效性和安全性,维护系统的正常运行秩序,保障数据的保密性和完整性,是系统稳定运营的基石。其界面如下图所示。

图5-6 系统用户界面图

添加新系统用户的关键代码如下:

   @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        Map<String,Object> paramMap = service.readBody(request.getReader());

        this.addMap(paramMap);

        return success(1);

}

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

5.3.2  通知公告管理

通知公告管理:创建、编辑和发布面向全体用户的通知或公告。界面图如下所示。

图5-7通知公告管理界面图

通知公告管理关键代码如下:

关键代码如下:

<sql id="selectAccessTokenVo">

        select token_id, token, maxage, create_time, update_time, user_id from access_token

    </sql>

    <select id="selectAccessTokenList" parameterType="com.project.demo.entity.AccessToken" resultMap="AccessTokenResult">

        <include refid="selectAccessTokenVo"/>

        <where>

            <if test="token != null  and token != ''"> and token = #{token}</if>

            <if test="maxage != null "> and maxage = #{maxage}</if>

            <if test="userId != null "> and user_id = #{userId}</if>

        </where>

    </select>

5.3.3  轮播图管理

管理员可以轻松上传、编辑和排列轮播图,展示最新促销活动、特色药品推荐或健康资讯。每张轮播图可链接至相关页面,引导用户深入了解特定内容。管理员还能设置轮播图的显示顺序、持续时间和过渡效果,优化视觉呈现。此功能不仅美化了系统界面,还有效提升了信息传播效率,吸引用户关注关键内容,增强用户参与度和系统互动性。其界面如下图所示。

图5-8 轮播图管理界面图

轮播图管理关键代码如下:

@PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        Map<String,Object> paramMap = service.readBody(request.getReader());

        this.addMap(paramMap);

        return success(1);

}

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

6  系统测试

6.1  系统测试目的

药店管理系统测试的主要目的是确保系统功能正常、性能稳定、安全可靠。测试旨在验证系统各项功能是否按照需求规格书要求正常工作,检查系统的易用性和用户体验,确保用户能够顺利完成各项操作。此外,系统测试还旨在评估系统的性能指标,包括响应时间、并发能力等,以保证系统在高负载情况下仍能正常运行。另外,安全测试也是重要的一部分,确保系统能够有效防范各类安全威胁和攻击。通过全面的系统测试,可以保障药店管理系统的稳定性、可靠性和安全性。

6.2  功能测试用例

  系统测试旨在检验系统功能是否正常工作。通过功能测试用例的执行,可以有效评估系统功能的正确性、完整性和稳定性,帮助发现和解决潜在的功能缺陷,确保系统能够按照预期功能正常运行。功能测试用例包括用户注册、用户登录、药品信息管理、系统用户管理、轮播图管理等。

表6-1 注册功能测试用例

测试用例编号

功能模块

测试用例描述

预期结果

TC001

用户注册

测试用户通过注册页面输入正确的用户名、密码、邮箱等信息后点击注册按钮。

系统显示注册成功,并自动跳转到登录页面。

TC002

用户注册

测试用户通过注册页面输入正确的用户名、密码,但不输入邮箱信息后点击注册按钮。

系统显示错误提示,要求输入邮箱地址。

表6-2 登录功能测试用例

测试用例编号

功能模块

测试用例描述

预期结果

TC001

用户登录

测试用户输入正确的用户名和密码后点击登录按钮。

系统显示登录成功,并跳转到用户后台首页。

TC002

用户登录

测试用户输入正确的用户名,但密码错误后点击登录按钮。

系统显示错误提示,要求输入正确的密码。

TC003

用户登录

测试用户输入正确的密码,但用户名错误后点击登录按钮。

系统显示错误提示,要求输入正确的用户名。

表6-3 药品信息管理功能测试用例

测试用例编号

功能模块

测试用例描述

预期结果

TC001

药品信息管理

添加一个新的药店管理,输入所有必填字段,包括名称、成分、功效、用法用量等。

系统应成功添加药品信息,并在药品列表中显示新添加的药品。

TC002

药品信息管理

编辑一个已存在的药店管理信息,修改其部分字段,如功效和用法用量。

系统应成功更新药品信息,并在药品详情页面显示修改后的信息。

TC003

药品信息管理

尝试删除一个已存在的药店管理信息。

系统应成功删除药品信息,并在药品列表中不再显示该药品。

表6-4 系统用户管理功能测试用例

测试用例编号

功能模块

测试用例描述

预期结果

TC001

系统用户管理

验证管理员能否查看并管理所有用户的账户信息,包括用户名、邮箱、注册时间等

成功查看并管理所有用户的账户信息,信息准确且完整

TC002

系统用户管理

验证管理员能否对用户进行分组管理,如按活跃度、信用等级等分组

成功对用户进行分组管理,分组信息准确且有效

TC003

系统用户管理

测试管理员在编辑用户信息时,对必填项、格式等验证功能的正确性

编辑用户信息时,验证功能正确,信息修改成功且符合规范

表6-5 轮播图管理功能测试用例

测试用例编号

功能模块

测试用例描述

预期结果

TC001

轮播图管理

验证管理员能否上传、编辑和删除轮播图,包括图片、链接等信息的设置

成功上传、编辑和删除轮播图,信息设置准确且有效

TC002

轮播图管理

验证轮播图是否能在系统首页或指定页面按设定顺序正常显示

轮播图按设定顺序正常显示,显示效果良好

TC003

轮播图管理

测试管理员在查看轮播图数据时,对日期范围、显示状态等筛选功能的正确性

筛选结果正确,符合预期,轮播图数据展示准确

6.3  测试结果

在本次测试中,我们对用户注册、用户登录、药品信息管理、系统用户管理和轮播图管理等功能进行了详细测试。测试结果显示,用户注册功能在输入有效信息时能够成功创建账户并发送验证邮件,而在输入已有用户名时则提示用户名已存在。用户登录功能在输入正确凭据时能成功登录,在输入错误凭据时会提示错误信息。顾客用户申请审核功能在提交正确信息后能够成功发起审核流程,提交信息不完整时,系统会提示补充必要信息;管理员在审核用户申请时,能够更新申请状态。药品信息管理功能稳定可靠,管理员可以无缝添加、编辑和删除药品信息,确保药品数据库的准确性和完整性,包括药品名称、成分、功效等关键字段。系统用户管理功能高效且实用,管理员能够实时查看并管理所有用户的账户信息,包括用户名、邮箱、登录状态等关键数据。轮播图管理功能强大且灵活,管理员能够轻松上传、编辑和删除轮播图,包括图片等信息的设置。系统能够即时更新轮播图数据,确保轮播图信息的准确性和完整性。总体而言,所有测试用例均达到预期效果,系统功能表现稳定。

结  论

基于Spring Boot的药店管理系统通过信息化手段显著提升了药店的运营效率和服务质量。该系统采用Java语言和MySQL数据库,利用Spring Boot框架构建后端服务,并结合前后端分离技术,确保系统的高效性和可扩展性。顾客用户可以便捷地注册登录、查询药品信息、在线购买药品并进行健康咨询,支持点赞、收藏和评论功能,极大提升了用户体验。店员用户能够高效处理订单、管理药品库存和采购记录,并分别管理和维护用户的收藏项及审核和回复评论。管理员则拥有全面权限,包括系统用户管理、药品信息维护、采购信息管理及系统配置等,通过后台集中监控关键指标生成销售报表辅助决策。

系统的实施显著提升了药店的整体管理水平,提供了实时、准确的经营数据,助力科学决策。系统的透明度和可追溯性增强了客户信任度,优化了库存管理,提升了服务质量,实现了业务增长和服务质量的全面提升。通过这样一个一体化平台,药店能够更加顺畅地运营,为客户提供更加便捷和个性化的服务体验,进一步增强了市场竞争力。这一系统展示了信息化管理在现代零售药店中的巨大潜力和价值。

参考文献

[1]谭康康,胡支滨,韩阳,等.药店药品信息管理系统的设计及优化[J].华北理工大学学报(自然科学版),2023,45(02):104-109.

[2]马绍阳,王伟东,韩斌倩,等.基于Spring Boot+Vue的智能远程医疗平台的设计与实现[J].网络安全技术与应用,2024,(01):55-57.

[3]杨雅麟,王智超,张宇晴,等.基本医疗保险定点零售药店管理情况调研[J].中国药师,2020,23(04):716-719.

[4]齐丽.数字化转型对连锁药店管理的影响研究[J].财经界,2024,(03):24-26.2024.03.040.

[5]高弘杨.零售药店自动化升级,势不可挡[J].中国药店,2023,(03):80-82+74.

[6]刘帆.基于智能药品柜的零售药店监管系统设计与实现[D].山东大学,2021.2021.004180.

[7]周方.基于Spring Boot框架的即时通信系统研究[J].数字通信世界,2025,(01):43-45.

[8]  Jeff Cain,Aishwarya S Rajan.Proof of Concept of ChatGPT as a Virtual Tutor.[J].American journal of pharmaceutical education,2024,88(12):101333.

[9]  刘鼎立,许贵林,杨悦,余弦.基于MySQL协议的数据库运维代理系统设计[J].无线互联科技,2024,21(20):57-61.

[10]  Mohammad Abu Assab,Hisham E. Hasan,Hamza Alhamad,Fares Albahar,Abdallah Alzayadneh,Hanadi Abu Assab,Wael Abu Dayyih,Zainab Zakaraya.Assessing pharmacists' awareness of financial indicators in community pharmacy management: A cross-sectional study[J].Heliyon,2024,10(13):e33338-e33338.

[11] 欧阳东方.基于大数据分析的S药店4C营销策略优化研究[D].   贵州大学,   2024.

[12] 邢俊芳.云南FY连锁药店营销策略研究[D].   云南财经大学,   2024.

[13]  Qihong Pan,Yang Liu,Shaofeng Wei.Design of a multi-category drug information integration platform for intelligent pharmacy management: A needs analysis study.[J].Medicine,2024,103(15):e37591-e37591.

[14]黄赛英.基于Springboot的医院档案管理系统设计[J].集成电路应用,2023,40(11):384-385.

[15] 胡美英.新零售背景下SRYY公司单体药店经营能力提升研究[D].   南昌大学,   2022.

[16] 陈国圳.新零售背景下D连锁药店营销策略研究[D].   广东工业大学,   2022.

[17]  戴胜,吴晟,李雪,吉玉兰.信息化背景下TBL在药店经营与管理课程中的应用[J].海峡药学,2024,36(04):48-51.

[18]齐丽.数字化转型对连锁药店管理的影响研究[J].财经界,2024,(03):24-26.

致 谢

这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设施能够完成离不开老师的帮助。我对老师由衷的表示感谢,

其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。

最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。

再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。

由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。

点赞+收藏+关注 → 私信领取本源代码、数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值