随着社会经济的发展和人们生活水平的提高,咖啡文化逐渐成为现代生活的一部分,咖啡的消费需求日益旺盛。因此,本研究引入信息化技术开发一个高效便捷的咖啡销售系统,来提升咖啡销售的效率与用户体验。本系统使用Java作为编程语言,采用Spring Boot作为后端框架,结合MySQL数据库储存和处理数据,并通过uni-app实现跨平台的应用开发,利用微信小程序作为前端展示平台,面对注册用户和管理员两类用户,采用敏捷开发方法,逐步实现了包括注册登录、数据分析、系统用户管理、售后信息管理、订单取消管理、系统管理、通知消息管理、资源管理以及商城管理等核心功能,基本满足整个咖啡销售购买的业务流程,有效提高销售效率和服务体验。最终经过功能验证和性能测试,确保系统在实际应用中的可行性和高效性,并具有良好的扩展性和可维护性。通过本系统的开发与实施,不仅能够有效提高咖啡销售的管理效率,还能够优化用户体验,满足用户的多样化需求,为咖啡行业的信息化建设提供了新的解决方案。

关键词:咖啡销售系统;Spring Boot;Java;微信小程序;在线商城

ABSTRACT

With the development of social economy and the improvement of people's living standards, coffee culture has gradually become a part of modern life, and the demand for coffee consumption is increasingly strong. Therefore, this study introduces information technology to develop an efficient and convenient coffee sales system to improve the efficiency and user experience of coffee sales. This system uses Java as the programming language and Spring Boot as the backend framework. It combines MySQL database to store and process data, and implements cross platform application development through uni app. Using WeChat mini program as the front-end display platform, it gradually implements core functions including registration and login, data analysis, system user management, after-sales information management, order cancellation management, system management, notification message management, resource management, and mall management, facing registered users and administrators. It basically meets the entire coffee sales and purchase business process, effectively improves sales efficiency and service experience. After functional verification and performance testing, the feasibility and efficiency of the system in practical applications are ensured, and it has good scalability and maintainability. Through the development and implementation of this system, not only can the management efficiency of coffee sales be effectively improved, but also the user experience can be optimized to meet the diverse needs of users, providing a new solution for the informationization construction of the coffee industry.

Keywords: coffee sales system; Spring Boot;Java;WeChat Mini Program; Online Shop

目  录

摘  要

ABSTRACT

第1章 绪  论

1.1 开发背景

1.2 开发意义

1.3 国内现状

1.4 国外现状

第2章 相关技术介绍

2.1 SpringBoot框架介绍

2.2 MySQL数据库

2.3 Java语言

2.4 uni-app开发框架

2.5 微信小程序

第3章 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.2 系统功能需求

3.2.1 注册用户主要功能

3.2.2 管理员主要功能

3.3 非功能性需求分析

3.4 系统用户用例分析

3.4.1 注册用户用例图

3.4.2 管理员用例图

3.5 系统流程分析

3.5.1 系统操作流程图

3.5.2 系统登录流程图

3.5.3 用户注册流程图

第4章 系统设计

4.1 功能模块设计

4.2 数据库设计

4.2.1 概念设计

4.2.2 逻辑设计

第5章 系统实现

5.1 注册用户主要功能实现

5.1.1 用户注册模块

5.1.2 用户登录模块

5.1.3 前台首页模块

5.1.4 咖啡商城模块

5.1.5 购物车模块

5.1.6 我的模块

5.2 管理员模块主要功能实现

5.2.1 后台首页模块

5.2.2 系统用户模块

5.2.3 售后信息管理模块

5.2.4 取消订单管理模块

5.2.5 商城管理模块

第6章 系统测试

6.1 测试目的

6.2 测试用例

6.3 测试结果

结  论

参考文献

致  谢

附录

系统核心代码设计

用户注册

用户登录

修改密码

修改数据

删除数据

获取列表

图片上传

第1章 绪  论

1.1开发背景

近年来,咖啡消费正在经历持续增长,成为全球饮食文化中不可或缺的一部分。特别是在国内,随着生活方式的变化和消费理念的升级,咖啡行业越来越多地吸引了年轻消费者的关注。然而,传统的咖啡销售模式面临着线上线下融合不畅、管理效率低下以及用户体验差等问题。因此,有必要利用现代信息技术手段,开发一款能够提升销售效率、优化管理流程并增强用户体验的咖啡销售系统。此外,Spring Boot作为一种轻量级的企业级应用开发框架,能够帮助开发者快速构建高效的后端应用,而微信小程序的普及则为前端实现提供了良好的平台。因此,结合这两种技术,开发一款适用于咖啡行业的销售系统,既符合市场需求,又具有重要的研究价值和应用前景。

1.2开发意义

本研究的主要目的是基于Spring Boot后端框架和uni-app前端框架,结合微信小程序技术设计和实现一套功能齐全且操作简便的咖啡销售系统。通过建立系统化的咖啡销售平台,解决传统销售模式中存在的管理混乱、信息不对称等问题,提高整体运营效率。充分利用微信小程序的便捷性,方便消费者能够随时随地进行浏览和购买,为消费者提供了更为灵活的购物选择,从而提升用户满意度。此外,本系统的实施不仅能够推动咖啡行业的数字化进程,让更多的咖啡商户认识到信息技术在销售及管理中的重要作用,促进行业整体的技术进步,而且可以作为后续相关研究的基础,引导更多研究者探索咖啡行业在信息化管理、数据分析等领域的深层次应用。综上所述,本研究不仅具有理论价值,也具有重要的实际应用前景,对咖啡行业的可持续发展和现代化转型具有积极作用。

1.3国内现状

随着互联网技术的发展和智能手机的普及,微信小程序作为一种新兴的应用模式,已成为商业运营中重要的一环。在零售行业,尤其是食品饮料行业,越来越多的企业选择基于微信小程序的在线销售平台,以便为顾客提供便捷的购物体验。本文基于Spring Boot技术,探讨了咖啡销售微信小程序的开发与实现,分析了国内外相关研究的发展现状。

近年来,国内在电子商务平台的建设和管理方面取得了显著进展。以药品销售管理为例,卢伯宪等(2024)在其研究中设计并实现了一个药品销售管理信息系统,该系统通过.NET平台开发,运用了C#语言及Microsoft SQL Server 2019数据库,为商家提供了高效的管理工具[1]。虽然该研究重点不在于咖啡销售,但其在信息系统设计方面的经验对本课题具有重要借鉴意义,尤其是在后台管理和数据存储方面。

吴志竣等(2024)提出的商品销售管理系统设计,使用了Spring Boot作为后端框架,系统具备前后端分离的特点,并且实现了商品推荐和销售数据可视化[2]。该研究为咖啡销售小程序的开发提供了有力的参考,尤其是在数据分析和销售优化方面。借鉴其商品推荐算法和销售数据分析模型,可以提升小程序的用户体验和销售效果。

胡宁玉等(2023)研究了生鲜产品的线上销售系统,系统通过协同过滤算法为消费者提供个性化的推荐,改进了传统生鲜销售模式中的低效问题[3]。虽然该研究关注的是生鲜产品,但其在推荐算法和信息展示方面的设计可用于咖啡销售小程序中,尤其是在如何根据用户偏好推荐相关咖啡产品方面。

王静宇(2023)在其研究中提出了基于知识表示的推荐算法,用于大豆销售系统的优化。该系统通过引入知识图谱和推荐技术,能够为用户提供更加个性化的购物推荐,这为本课题中的咖啡销售推荐系统设计提供了有益的参考[4]。

范斐斐等(2023)设计的农产品销售系统采用PHP技术,提出了小程序平台的设计思路,强调了小程序的简便性和用户友好性[5]。这为本课题中的小程序开发提供了重要参考,特别是在用户界面设计和购物体验优化方面。

王慧(2023)研究了宁夏特色农产品销售系统,采用Java技术和MySQL数据库,设计了一个多角色的管理系统。该系统具备良好的扩展性和稳定性,对于本课题微信小程序的功能设计,尤其是数据管理和用户交互部分,提供了重要的启示[6]。

1.4国外现状

在国外,类似的研究也有很多。Vieira Davi(2023)在其《Designing Hexagonal Architecture with Java》一书中,探讨了如何在Java平台下设计可维护的系统架构[7]。尽管该研究未涉及微信小程序,但其关于如何设计健壮、可扩展系统的思想,尤其是在Java和Spring Boot框架下的应用,提供了有价值的指导。

Yong Peng和Shi Wang(2023)研究了基于SOA架构的在线药品销售系统,该系统优化了各个子系统之间的信息交互,提出了高效的系统架构[8]。这一研究表明,通过优化系统架构,可以提升平台的扩展性和灵活性,这对于构建可扩展的咖啡销售平台具有重要意义。

Zengyu Cai等(2019)提出了一种基于Java Web的在线商城设计方案,强调了服务架构和业务流程的设计[9]。该方案提供了一种高效的商城系统设计思路,涉及到用户交互、支付处理等功能模块,适用于本课题中的小程序设计。

从国内外研究的现状来看,虽然现有的研究多集中于药品、商品和生鲜产品的销售系统,但其在系统架构、数据管理、用户推荐和界面设计等方面的成果,对于基于Spring Boot的咖啡销售微信小程序的开发具有重要的借鉴意义。在国内外相关研究的基础上,本课题将整合这些研究成果,针对咖啡销售的特点,设计一个高效、稳定、用户友好的小程序系统。

第2章 相关技术介绍

2.1SpringBoot框架介绍

SpringBoot是Spring家族中的一个重要成员,它简化了Spring应用的初始搭建和开发过程。通过提供一系列默认配置和自动装配机制,SpringBoot使得开发者能够更快地构建出生产级别的Spring应用。它支持多种开发工具和框架,如Maven、Gradle等,并且可以与多种数据库和缓存技术无缝集成。SpringBoot的简洁性和高效性使其成为开发企业级应用的首选框架之一。在本次毕业设计中,SpringBoot框架为咖啡销售系统的后端开发提供了强大的支持。

2.2MySQL数据库

MySQL是一款开源的关系型数据库管理系统,它以其高性能、高可靠性和易用性而著称。MySQL支持多种存储引擎,如InnoDB、MyISAM等,能够满足不同应用场景的需求。它提供了丰富的SQL语法和函数,使得开发者能够方便地进行数据查询、更新和删除操作。MySQL还支持事务处理、索引优化和复制等高级功能,为数据的完整性和安全性提供了有力保障。在本次毕业设计中,MySQL数据库作为咖啡销售系统的数据存储核心,承担着存储和管理各类系统重要数据的任务。而且通过合理的数据库设计和优化,确保了系统的数据访问效率和数据安全性。

2.3Java语言

JAVA是一种广泛使用的编程语言,具有跨平台、面向对象、安全性高等特点。JAVA语言提供了丰富的类库和API,使得开发者能够轻松地进行网络编程、数据库操作、图形界面开发等任务。JAVA还支持多线程编程和分布式计算,为开发高性能和可扩展的应用提供了有力支持。所以本次毕设选择了JAVA作为咖啡销售系统的开发语言。通过利用JAVA的面向对象特性和丰富的类库资源,成功实现了系统的各个功能模块,并保证了系统的稳定性和可扩展性。而且JAVA的跨平台特性也使得此次毕业设计能够在不同的操作系统和硬件平台上运行,为用户提供了更加便捷的使用体验。

2.4uni-app开发框架

uni-app是一个跨平台的应用开发框架,可以同时用于开发微信小程序、H5应用、Android和iOS应用等,减少了开发成本和时间。uni-app提供了丰富的组件库和插件,可以快速构建各种功能模块,提高开发效率。通过优化渲染引擎和网络请求,提高了应用程序的性能和用户体验。App端支持原生渲染,可支撑更流畅的用户体验。小程序端的性能优于市场其他框架。同时基于通用的前端技术栈,采用vue语法+微信小程序api,无额外学习成本。

2.5微信小程序

微信小程序是腾讯公司推出的一种轻量级应用,用户无需下载和安装,只需通过微信平台即可访问。用户可以在微信中直接搜索和使用小程序,无需额外安装,解决了安装慢、占用空间的问题。小程序可以通过微信的多种入口(如聊天界面、公众号、扫一扫等)进行访问,极大提高了用户的使用便利性,具有加载速度快、使用方便、用户体验好的特点,可以实现多种功能,包括网页浏览、在线支付、社区互动等,适用于各种商业场景。

第3章 系统分析

3.1可行性分析

3.1.1技术可行性

基于Spring Boot框架开发咖啡销售系统具有显著优势。Spring Boot以其简洁的配置、高效的性能以及强大的集成能力,为快速构建稳定、可扩展的Web应用提供了坚实基础。结合MySQL数据库的高效存储与检索能力,以及Java语言的广泛应用与成熟生态,系统能够实现复杂的数据处理与业务逻辑。此外,前端采用uni-app、微信新程序等技术,可确保用户界面的流畅与互动性,技术实现路径清晰可行。

3.1.2经济可行性

该系统开发成本相对较低,主要投入在于人力与硬件资源。Spring Boot及MySQL均为开源技术,无需额外购买软件许可,降低了开发成本。如果系统上线可通过提供便捷、透明的咖啡销售点餐服务,可吸引大量用户,进而通过广告、增值服务等方式实现盈利,具有良好的经济回报预期。此外,系统维护成本适中,便于长期运营与迭代升级。

3.1.3操作可行性

系统界面简洁友好,操作流程简单,用户无需复杂培训即可上手。系统功能模块化设计操作简便,便于用户快速完成操作。且系统支持多角色协同操作,管理员和用户登录系统后均可根据权限进行相应操作,有效提升管理效率和用户体验。

3.2系统功能需求

本咖啡销售系统根据使用者划分,主要包含注册用户和管理员等两大角色,每个角色对应的主要功能说明如下所示:

3.2.1注册用户主要功能

(1)注册登录:提供注册登录功能,游客可以通过注册成为系统用户,使用账号密码可登录系统前台,使用权限内功能操作,支持微信授权登录。

(2)首页:用户登录系统后首先进入首页界面,该界面主要提供系统功能导航和系统重要信息和推荐信息(采用协同过滤算法,优先推荐当前用户点击过同类型信息)概览,包括可查看轮播图、通知消息等内容;并提供咖啡商城等系统子功能链接入口。

(3)通知消息:当用户点击首页的“通知消息”时,可查看管理员发布的系统公告内容。

(4)咖啡商城:当用户点击首页的“咖啡商城”时,可搜索和浏览所有的咖啡商城信息,进入详情页可评论、收藏咖啡商城信息,并提供客服、加入购物车、立即购买及领取优惠券等操作。

(5)购物车:注册用户可查看和管理加入购物车的商品信息,批量选择商品进行购买或删除操作

(6)咖啡资讯:注册用户可搜索和浏览发布的所有咖啡资讯信息,包括相关新闻、文章等资讯内容,进行点赞、收藏和评论资讯信息。

(7)我的:“我的”模块主要提供包括基本信息、收货地址、收藏、订单、购物车、我的优惠券等子功能管理操作,注册用户可根据需求对自己各类信息进行管控和处理。

3.2.2管理员主要功能

(1)登录:管理员账号密码由系统生成,可使用账号密码进行登录系统后台,负责管理和维护系统各类信息,提供个人信息和密码管理功能。

(2)后台首页:管理员登录系统后首先进入后台首页界面,该界面主要提供系统信息概览和数据统计分析图表,包括商品销售金额统计、商品销售数量统计等图表。

(3)系统用户:管理员可对系统用户信息进行管理,包括注册用户和管理员等用户,实现添加、删除、封禁和审核用户信息等操作。

(4)售后信息管理:管理员可管理所有售后信息,包括可查询和删除售后信息,负责审核售后信息。

(5)取消订单管理:管理员可管理所有取消订单信息,包括可查询和删除取消订单,负责审核取消订单信息。

(6)系统管理:管理员可对首页的轮播图进行管理,实现增删改查操作,提供标题搜索功能,支持添加图片附带链接信息。

(7)通知消息管理:管理员可对通知消息进行管理,实现增删改查操作,支持标题搜索,可查看其详情信息。

(8)资源管理:管理员可管理咖啡资讯和资讯分类等交流信息,可发布、删除和更新咖啡资讯内容,并进行资讯分类管理,支持关键字搜索,提供评论查看和管控功能。

(9)商城管理:管理员可管理咖啡商城、分类列表、订单列表、订单配送、优惠券等商城信息。可上架、下架和更新商品信息,进行分类管理;可处理订单,更新配送信息,跟踪和更新物流签收情况;支持发布更新优惠券信息。

3.3非功能性需求分析

在基于SpringBoot的咖啡销售系统的设计中,非功能性需求分析是也是很重要的。它主要关注系统除了基本功能外的其他特性,如性能、安全性、易用性、可维护性等,这些特性对于确保系统的稳定运行和用户满意度至关重要。

性能:系统需要能够处理高并发请求,确保在多个用户同时操作时仍能保持稳定运行。

安全性:系统必须采取严格的措施来保护敏感数据,如用户信息、交易记录等,防止数据泄露和非法访问。

易用性:系界面友好直观,操作流程简化,提升用户体验。

可维护性:代码结构清晰,文档完备,便于后续开发与问题排查。

3.4系统用户用例分析

3.4.1注册用户用例图

在咖啡销售系统中注册用户包含注册登录、首页(通知消息、轮播图、咖啡商城)、购物车、咖啡资讯、我的(基本信息、收货地址、收藏、订单、购物车、我的优惠券、售后信息、取消订单、订单配送)等功能。注册用户用例图如下所示:

图3-1 注册用户用例图

3.4.2管理员用例图

咖啡销售系统中管理员则集成了登录、后台首页、系统用户、售后信息管理、取消订单管理、系统管理、通知消息管理、资源管理、商城管理等功能。管理员用例图如下所示:

图3-2 管理员用例图

3.5系统流程分析

3.5.1系统操作流程图

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

图3-3 系统操作流程图

3.5.2系统登录流程图

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

图3-4 登录流程图

3.5.3用户注册流程图

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

图3-5 注册流程图

第4章 系统设计

4.1功能模块设计

整个咖啡销售系统是由多个功能模块组合而成的,根据用户需求分析,本系统主要可以划分为注册用户和管理员两大模块。各模块又可细分为不同的子功能设计,实现多角色协作,负责不同的职能,每个角色对应的功能模块如图所示。

图4-1系统功能结构图

4.2数据库设计

4.2.1概念设计

借助系统总体E-R图可以使其他用户快速轻松地了解系统的功能以及他们之间的关系。根据咖啡销售系统各个实体和属性的分析结果,本咖啡销售系统总体E-R实体关系图如下所示。

图4-2系统总体ER图

4.2.2逻辑设计

通过上一小节咖啡销售系统中总E-R关系图上得出一共需要创建很多个数据表。在此主要罗列几个主要的数据库表结构设计。

介绍了一些根据各类别主要数据库表的设计结构以及基本功能建立数据库表:

表 4-1-access_token(登陆访问时长)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

token_id

int

临时访问牌ID

2

token

varchar

64

临时访问牌

3

info

text

65535

信息

4

maxage

int

最大寿命:默认2小时

5

create_time

timestamp

创建时间

6

update_time

timestamp

更新时间

7

user_id

int

用户编号

表 4-2-address(收货地址)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

address_id

int

收货地址

2

name

varchar

32

姓名

3

phone

varchar

13

手机

4

postcode

varchar

8

邮编

5

address

varchar

255

地址

6

user_id

mediumint

用户ID

7

create_time

timestamp

创建时间

8

update_time

timestamp

更新时间

9

default

tinyint

默认判断

表 4-3-after_sales_information(售后信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

after_sales_information_id

int

售后信息ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_phone_number

varchar

64

用户电话

5

order_number

varchar

64

订单编号

6

after_sales_status

varchar

64

售后状态

7

after_sales_pictures

varchar

255

售后图片

8

after_sales_reasons

text

65535

售后原因

9

examine_state

varchar

16

审核状态

10

examine_reply

varchar

16

审核回复

11

create_time

datetime

创建时间

12

update_time

timestamp

更新时间

表 4-4-article(文章)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

article_id

mediumint

文章id

2

title

varchar

125

标题

3

type

varchar

64

文章分类

4

hits

int

点击数

5

praise_len

int

点赞数

6

create_time

timestamp

创建时间

7

update_time

timestamp

更新时间

8

source

varchar

255

来源

9

url

varchar

255

来源地址

10

tag

varchar

255

标签

11

content

longtext

4294967295

正文

12

img

varchar

255

封面图

13

description

text

65535

文章描述

表 4-5-article_type(文章分类)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

type_id

smallint

分类ID

2

display

smallint

显示顺序

3

name

varchar

16

分类名称

4

father_id

smallint

上级分类ID

5

description

varchar

255

描述

6

icon

text

65535

分类图标

7

url

varchar

255

外链地址

8

create_time

timestamp

创建时间

9

update_time

timestamp

更新时间

表 4-6-auth(用户权限管理)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

auth_id

int

授权ID

2

user_group

varchar

64

用户组

3

mod_name

varchar

64

模块名

4

table_name

varchar

64

表名

5

page_title

varchar

255

页面标题

6

path

varchar

255

路由路径

7

parent

varchar

64

父级菜单

8

parent_sort

int

父级菜单排序

9

position

varchar

32

位置

10

mode

varchar

32

跳转方式

11

add

tinyint

是否可增加

12

del

tinyint

是否可删除

13

set

tinyint

是否可修改

14

get

tinyint

是否可查看

15

field_add

text

65535

添加字段

16

field_set

text

65535

修改字段

17

field_get

text

65535

查询字段

18

table_nav_name

varchar

500

跨表导航名称

19

table_nav

varchar

500

跨表导航

20

option

text

65535

配置

21

create_time

timestamp

创建时间

22

update_time

timestamp

更新时间

表 4-7-cancel_order(取消订单)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

cancel_order_id

int

取消订单ID

2

user_account

int

用户账号

3

user_name

varchar

64

用户姓名

4

user_phone_number

varchar

64

用户电话

5

order_number

varchar

64

订单编号

6

cancel_time

datetime

取消时间

7

reason_for_cancellation

text

65535

取消原因

8

examine_state

varchar

16

审核状态

9

examine_reply

varchar

16

审核回复

10

create_time

datetime

创建时间

11

update_time

timestamp

更新时间

表 4-8-cart(购物车)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

cart_id

int

购物车ID

2

title

varchar

64

标题

3

img

varchar

255

图片

4

user_id

int

用户ID

5

create_time

timestamp

创建时间

6

update_time

timestamp

更新时间

7

state

int

状态:使用中,已失效

8

price

double

单价

9

price_ago

double

原价

10

price_count

double

总价

11

num

int

数量

12

goods_id

mediumint

商品id

13

type

varchar

64

商品分类

14

description

varchar

255

描述

表 4-9-code_token(验证码)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

code_token_id

int

验证码ID

2

token

varchar

255

令牌

3

code

varchar

255

验证码

4

expire_time

timestamp

失效时间

5

create_time

timestamp

创建时间

6

update_time

timestamp

更新时间

表 4-10-coffee_mall(咖啡商城)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

coffee_mall_id

int

咖啡商城ID

2

coffee_specifications

varchar

64

咖啡规格

3

hits

int

点击数

4

collect_len

int

收藏数

5

comment_len

int

评论数

6

cart_title

varchar

125

标题

7

cart_img

text

65535

封面图

8

cart_description

varchar

255

描述

9

cart_price_ago

double

原价

10

cart_price

double

卖价

11

cart_inventory

int

商品库存

12

cart_type

varchar

64

商品分类

13

cart_content

longtext

4294967295

正文

14

cart_img_1

text

65535

主图1

15

cart_img_2

text

65535

主图2

16

cart_img_3

text

65535

主图3

17

cart_img_4

text

65535

主图4

18

cart_img_5

text

65535

主图5

19

create_time

datetime

创建时间

20

update_time

timestamp

更新时间

表 4-11-collect(收藏)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

collect_id

int

收藏ID

2

user_id

int

收藏人ID

3

source_table

varchar

255

来源表

4

source_field

varchar

255

来源字段

5

source_id

int

来源ID

6

title

varchar

255

标题

7

img

varchar

255

封面

8

create_time

timestamp

创建时间

9

update_time

timestamp

更新时间

表 4-12-comment(评论)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

comment_id

int

评论ID

2

user_id

int

评论人ID

3

reply_to_id

int

回复评论ID

4

content

longtext

4294967295

内容

5

nickname

varchar

255

昵称

6

avatar

varchar

255

头像地址

7

create_time

timestamp

创建时间

8

update_time

timestamp

更新时间

9

source_table

varchar

255

来源表

10

source_field

varchar

255

来源字段

11

source_id

int

来源ID

表 4-13-coupon(优惠券)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

coupon_id

int

优惠券ID

2

coupon_user_id

int

优惠券用户ID

3

coupon_user_auth

varchar

255

优惠券用户

4

coupon_name

varchar

255

优惠券名称

5

coupon_price

int

优惠券价格

6

coupon_price1

int

优惠券券后价格

7

coupon_time

varchar

255

优惠券时间

8

coupon_type

varchar

255

优惠券类型

9

create_time

timestamp

创建时间

10

update_time

timestamp

更新时间

表 4-14-coupon_user(用户优惠券)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

id

int

用户优惠券ID

2

user_id

int

用户ID

3

coupon_id

int

优惠券ID

4

is_use

int

是否使用

5

coupon_user_id

int

用户优惠券ID

表 4-15-goods(商品信息)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

goods_id

mediumint

产品ID

2

title

varchar

125

标题

3

img

text

65535

封面图:用于显示于产品列表页

4

description

varchar

255

描述

5

price_ago

double

原价

6

price

double

卖价

7

sales

int

销量

8

inventory

int

商品库存

9

type

varchar

64

商品分类

10

hits

int

点击量

11

content

longtext

4294967295

正文

12

img_1

text

65535

主图1

13

img_2

text

65535

主图2

14

img_3

text

65535

主图3

15

img_4

text

65535

主图4

16

img_5

text

65535

主图5

17

create_time

timestamp

创建时间

18

update_time

timestamp

更新时间

19

customize_field

text

65535

自定义字段

20

source_table

varchar

255

来源表

21

source_field

varchar

255

来源字段

22

source_id

int

来源ID

23

user_id

int

添加人

表 4-16-goods_type(商品类型)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

type_id

int

商品分类ID

2

father_id

smallint

上级分类ID

3

name

varchar

255

商品名称

4

desc

varchar

255

描述

5

icon

varchar

255

图标

6

source_table

varchar

255

来源表

7

source_field

varchar

255

来源字段

8

create_time

timestamp

创建时间

9

update_time

timestamp

更新时间

表 4-17-hits(用户点击)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

hits_id

int

点赞ID

2

user_id

int

点赞人

3

create_time

timestamp

创建时间

4

update_time

timestamp

更新时间

5

source_table

varchar

255

来源表

6

source_field

varchar

255

来源字段

7

source_id

int

来源ID

表 4-18-logistics_delivery(物流配送)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

logistics_delivery_id

int

物流配送ID

2

order_number

varchar

64

订单号

3

product_name

varchar

64

商品名称

4

purchase_quantity

varchar

64

购买数量

5

total_transaction_amount

double

交易总额

6

the_date_of_issuance

date

发货日期

7

delivery_number

varchar

30

配送订单

8

ordinary_users

int

普通用户

9

shipping_address

varchar

64

收货地址

10

delivery_status

varchar

64

配送状态

11

signing_status

varchar

64

签收状态

12

recommend

int

智能推荐

13

contact_name

varchar

255

联系人名字

14

merchant_id

int

商家id

15

create_time

datetime

创建时间

16

update_time

timestamp

更新时间

表 4-19-notice(公告)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

notice_id

mediumint

公告ID

2

title

varchar

125

标题

3

content

longtext

4294967295

正文

4

create_time

timestamp

创建时间

5

update_time

timestamp

更新时间

表 4-20-order(订单)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

order_id

int

订单ID

2

order_number

varchar

64

订单号

3

goods_id

mediumint

商品ID

4

title

varchar

255

商品标题

5

img

varchar

255

商品图片

6

price

double

价格

7

price_ago

double

原价

8

num

int

数量

9

price_count

double

总价

10

norms

varchar

255

规格

11

type

varchar

64

商品分类

12

contact_name

varchar

32

联系人姓名

13

contact_email

varchar

125

联系人邮箱

14

contact_phone

varchar

11

联系人手机

15

contact_address

varchar

255

收件地址

16

postal_code

varchar

9

邮政编码

17

user_id

int

买家ID

18

merchant_id

mediumint

商家ID

19

create_time

timestamp

创建时间

20

update_time

timestamp

更新时间

21

description

varchar

255

描述

22

state

varchar

16

订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成

23

remark

text

65535

订单备注

24

delivery_state

varchar

16

发货状态:未配送,已配送

25

vip_discount

double

折扣

表 4-21-praise(点赞)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

praise_id

int

点赞ID

2

user_id

int

点赞人

3

create_time

timestamp

创建时间

4

update_time

timestamp

更新时间

5

source_table

varchar

255

来源表

6

source_field

varchar

255

来源字段

7

source_id

int

来源ID

8

status

tinyint

点赞状态:1为点赞,0已取消

表 4-22-registered_user(注册用户)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

registered_user_id

int

注册用户ID

2

user_name

varchar

64

用户姓名

3

user_phone_number

varchar

16

用户电话

4

examine_state

varchar

16

审核状态

5

user_id

int

用户ID

6

create_time

datetime

创建时间

7

update_time

timestamp

更新时间

表 4-23-schedule(日程管理)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

schedule_id

smallint

日程ID

2

content

varchar

255

日程内容

3

scheduled_time

datetime

计划时间

4

user_id

int

用户ID

5

create_time

datetime

创建时间

6

update_time

datetime

更新时间

表 4-24-score(评分)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

score_id

int

评分ID

2

user_id

int

评分人

3

nickname

varchar

64

昵称

4

score_num

double

评分

5

create_time

timestamp

创建时间

6

update_time

timestamp

更新时间

7

source_table

varchar

255

来源表

8

source_field

varchar

255

来源字段

9

source_id

int

来源ID

表 4-25-slides(轮播图)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

slides_id

int

轮播图ID

2

title

varchar

64

标题

3

content

varchar

255

内容

4

url

varchar

255

链接

5

img

varchar

255

轮播图

6

hits

int

点击量

7

create_time

timestamp

创建时间

8

update_time

timestamp

更新时间

表 4-26-upload(文件上传)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

upload_id

int

上传ID

2

name

varchar

64

文件名

3

path

varchar

255

访问路径

4

file

varchar

255

文件路径

5

display

varchar

255

显示顺序

6

father_id

int

父级ID

7

dir

varchar

255

文件夹

8

type

varchar

32

文件类型

表 4-27-user(用户账户)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

user_id

int

用户ID

2

state

smallint

账户状态:(1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

所在用户组

4

login_time

timestamp

上次登录时间

5

phone

varchar

11

手机号码

6

phone_state

smallint

手机认证:(0未认证|1审核中|2已认证)

7

username

varchar

16

用户名

8

nickname

varchar

16

昵称

9

password

varchar

64

密码

10

email

varchar

64

邮箱

11

email_state

smallint

邮箱认证:(0未认证|1审核中|2已认证)

12

avatar

varchar

255

头像地址

13

open_id

varchar

255

针对获取用户信息字段

14

create_time

timestamp

创建时间

表 4-28-user_group(用户组)

编号

字段名

类型

长度

是否非空

是否主键

注释

1

group_id

mediumint

用户组ID

2

display

smallint

显示顺序

3

name

varchar

16

名称

4

description

varchar

255

描述

5

source_table

varchar

255

来源表

6

source_field

varchar

255

来源字段

7

source_id

int

来源ID

8

register

smallint

注册位置

9

create_time

timestamp

创建时间

10

update_time

timestamp

更新时间

第5章 系统实现

5.1注册用户主要功能实现

5.1.1用户注册模块

用户点击注册,进入注册页面,填写好账号、密码、确认密码、昵称、邮箱、身份:注册用户、用户姓名、用户性别、用户电话等字段值,点击下方注册按钮,提示注册成功后,系统将自动跳转回到登录页面。注册界面如下图所示。

图5-1 注册界面

5.1.2用户登录模块

用户点击“登录”按钮,输入用户名、密码、验证码登录系统,登录时前端会自动校验用户名与密码以及该用户是否审核通过,审核通过的用户输入正确登录成功,输入错误会有提示信息。登录界面如下图所示。

图5-2 登录界面

5.1.3前台首页模块

用户登录系统后首先进入首页界面,该界面主要提供系统功能导航和系统重要信息和推荐信息(采用协同过滤算法实现喜好推荐,优先推荐当前用户点击过同类型信息)概览,包括可查看轮播图、活动公告等内容;并提供菜品信息、餐厅菜单等系统子功能链接入口。界面如下图所示。

图5-3 首页界面

5.1.4咖啡商城模块

当用户点击首页的“咖啡商城”时,可搜索和浏览所有的咖啡商城信息,进入详情页可评论、收藏咖啡商城信息,并提供客服、加入购物车、立即购买及领取优惠券等操作。界面如下图所示。

图5-4 咖啡商城界面

5.1.5购物车模块

注册用户可查看和管理加入购物车的商品信息,批量选择商品进行购买或删除操作。界面如下图所示。

图5-5 购物车界面

5.1.6我的模块

“我的”模块主要提供包括基本信息、收货地址、收藏、订单、购物车、我的优惠券等子功能管理操作,注册用户可根据需求对自己各类信息进行管控和处理。界面如下图所示。

图5-6我的界面

例如,用户可在“基本信息”中修改资料和密码等信息;可增改删查自己的“收货地址”信息;可在“收藏”中查看管控自己收藏的各类系统信息;可在“订单”中管理已提交的订单信息,进行查询、删除、支付等操作;可在“购物车”中管理已加入购物车的商品信息,购买或删除商品;可在“售后信息”中提交售后申请,确认处理回复情况;可提交“取消订单”申请,确认审核情况;可查询和跟踪“订单配送”情况,确认签收订单。界面如下图所示。

图5-7售后信息界面

5.2管理员模块主要功能实现

5.2.1后台首页模块

后台首页界面是管理员登录后台的起始界面,主要提供系统重要信息概览,并展示系统数据统计信息(如商品销售金额统计、商品销售数量等统计图表)。界面如下图所示。

图5-8后台首页界面图

5.2.2系统用户模块

管理员可对系统用户信息进行管理,包括注册用户和管理员等用户,实现添加、删除、封禁和审核用户信息等操作。界面如下图所示。

图5-9 系统用户界面

5.2.3售后信息管理模块

管理员可管理所有售后信息,包括可查询和删除售后信息,负责审核售后信息。如下图所示。

图5-10 售后信息审核界面图

5.2.4取消订单管理模块

管理员可管理所有取消订单信息,包括可查询和删除取消订单,负责审核取消订单信息。界面如下图所示。

图5-11 取消订单管理界面图

5.2.5商城管理模块

管理员可管理咖啡商城、分类列表、订单列表、订单配送、优惠券等商城信息。可上架、下架和更新商品信息,进行分类管理;可处理订单,更新配送信息,跟踪和更新物流签收情况;支持发布更新优惠券信息。界面如下图所示。

图5-12 商城管理界面

第6章 系统测试

6.1测试目的

在这个产品被投入使用前,首先需要进行试用,这是重要的环节。考虑到某个部分的开发没有缺陷情况下,把各种模块拼接,也有一定概率就存在矛盾。这就好比每个人都很独特,但聚在一起就显得杂乱无章,需要保证有默契的配合。对于测试,要看它的各项内容是否契合的原则。若与最初定下的标准有一定程度上的出入,那么就需要做出一些调整,让最终的大方向朝着目标前进。

测试是为了发现在开发的程序中所存在的问题,测试这一工作是非常艰巨的,而又是非常困难的,这一部分在程序的设计中占有很大比例,可以说一个程序的开发工作量要是占据了百分至六十,那么剩下的百分之四十必然是测试这一部分,甚至更高。

6.2测试用例

用户登录功能测试

表6-1 用户登录功能测试表

用例名称

注册用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

查看咖啡商城功能测试:

表6-2 查看咖啡商城功能测试表

用例名称

查看咖啡商城

目的

测试查看咖啡商城

前提

用户登录

测试流程

点击首页的咖啡商城

预期结果

可以查看到所有咖啡商城信息

实际结果

实际结果与预期结果一致

管理员添加咖啡商城测试:

表6-3 管理员添加咖啡商城测试表

用例名称

管理员添加咖啡商城测试用例

目的

测试管理员添加咖啡商城功能

前提

管理员登录—》商城管理—》咖啡商城

测试流程

1)咖啡商城添加页面,点击咖啡商城,点击添加按钮,输入相关咖啡商城信息。

2)点击进行提交。

预期结果

提交以后,等管理员审核后页面首页会显示新的咖啡商城信息 

实际结果

实际结果与预期结果一致

咖啡商城搜索功能测试:

表6-4咖啡商城搜索功能测试表

用例名称

咖啡商城搜索测试

目的

测试咖啡商城搜索功能

前提

测试流程

1)在搜索框填入搜索关键字。

2)点击搜索按钮。

预期结果

页面显示包含有搜索关键字的咖啡商城信息

实际结果

实际结果与预期结果一致

咖啡商城删除功能测试:

表6-5咖啡商城删除功能测试表

用例名称

咖啡商城删除测试

目的

测试咖啡商城删除功能

前提

管理员登录—》商城管理—》咖啡商城

测试流程

1)选择一个咖啡商城信息。

2)点击删除按钮。

预期结果

提示删除成功,前端页面不在展示该咖啡商城

实际结果

实际结果与预期结果一致

立即购买功能测试:

表6-6立即购买功能测试表

用例名称

立即购买测试

目的

测试立即购买功能

前提

注册用户登录—》咖啡商城—》立即购买

测试流程

1)选择一个咖啡商城信息,点击查看详情。

2)点击立即购买按钮。

预期结果

提示立即购买成功,该立即购买成功

实际结果

实际结果与预期结果一致

加入购物车功能测试:

表6-7加入购物车功能测试表

用例名称

加入购物车测试

目的

测试加入购物车功能

前提

注册用户登录—》咖啡商城—》加入购物车

测试流程

1)选择一个咖啡商城信息,点击查看详情。

2)点击加入购物车按钮。

预期结果

提示加入购物车成功,该加入购物车成功

实际结果

实际结果与预期结果一致

密码修改功能测试:

表6-8密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

6.3测试结果

在本次主要测试中主要对用户登录,密码修改,咖啡商城信息添加、查看、搜索、删除、立即购买、加入购物车等业务流程操作进行测试分析并编写测试用例。验证所有操作都能够正常运行,因此能够保证本次设计且已实现的功能能够正常运行,同时保存相关数据库的信息也同样正确无误。

结  论

本咖啡销售系统毕业设计项目已成功落下帷幕,这一成果不仅是对开发者技术实力与业务理解能力的全面展现,也是对传统咖啡行业数字化转型的一次积极探索。

本次毕业设计充分利用了Spring Boot框架的灵活性与高效性,通过模块化设计与微服务架构,实现了咖啡商城信息的全面管理、精准搜索与便捷下单购买。系统界面友好直观,操作流程简洁明了,为用户提供了极佳的使用体验。通过对数据库索引、缓存机制等精心优化,系统性能得到了显著提升,确保了高并发场景下的稳定运行。而且通过实施严格的数据加密策略、访问控制机制及日志审计功能,系统有效防范了数据泄露与非法访问等安全风险。

该毕业设计的完成,不仅标志着Spring Boot技术在传统咖啡行业领域的成功应用,也为传统行业的数字化转型提供了有益的参考与借鉴。通过深入挖掘用户需求与市场趋势,系统不仅满足了消费者于与商家的实际需求,还通过数据分析与可视化展示等功能,为市场洞察与决策支持提供了有力工具。这一成果不仅彰显了开发者的专业素养与创新能力,也为推动咖啡行业的数字化、智能化发展贡献了积极力量。

参考文献

  1. 卢伯宪,韦观泳,莫雅晶.药品销售管理信息系统设计与实现[J].福建电脑,2024,40(11):77-82.DOI:10.16707/j.cnki.fjpc.2024.11.013.
  2. 吴志竣,董智浩,林永兴.融合AI能力的商品销售管理系统的设计与实现[J].软件,2024,45(02):52-55.
  3. 胡宁玉,郝耀军,张静.生鲜产品线上销售系统的设计与实现[J].信息与电脑(理论版),2023,35(17):116-119.
  4. 王静宇.承德地区大豆销售系统的设计与实现[D].河北北方学院,2023.DOI:10.27767/d.cnki.ghbbf.2023.000065.
  5. 范斐斐,何子怡,张越,等.基于PHP的农产品销售系统的设计与实现[J].无线互联科技,2023,20(08):91-94.
  6. 王慧.宁夏特色农产品销售系统设计与实现[J].软件,2023,44(03):150-153.
  7. Davi V .Designing Hexagonal Architecture with Java:Build maintainable and long-lasting applications with Java and Quarkus[M].Packt Publishing Limited:2023-09-29.DOI:10.0000/9781837630714.
  8. Peng Y ,Wang S.Research and design of online drug mall system based on SOA[J].International Journal of Biomedical Engineering and Technology,2023,42(1):64-77.
  9. Cai Z ,Liu Y ,Gan Y , et al.Design and Implementation of Online Mall System based on Java Web[J].International Journal of Performability Engineering,2019,15(12):3237-3244.
  10. 杨米娜.基于微信小程序的“助农”销售系统的设计与开发[J].电子技术与软件工程,2021,(24):34-35.DOI:10.20109/j.cnki.etse.2021.24.013.
  11. 马静.基于微信小程序的购物商城系统的设计与实现[J].微型电脑应用,2021,37(03):31-34.
  12. 康娇兰.基于微信小程序的区块链商城系统的设计与实现[D].华中科技大学,2021.DOI:10.27157/d.cnki.ghzku.2021.004151.
  13. 刘永立.在线点餐系统的设计与实现[J].电脑编程技巧与维护,2025,(01):63-65+147.DOI:10.16184/j.cnki.comprg.2025.01.019.
  14. Shao W ,Liu K.Design and Implementation of Online Ordering System Based on SpringBoot[J].Journal of Big Data and Computing,2024,2(3):
  15. 任建伟,丁莎.基于微信小程序的点餐系统设计与实现[J].电脑编程技巧与维护,2024,(05):77-80.DOI:10.16184/j.cnki.comprg.2024.05.045.
  16. 江家龙.基于Vue.js框架的餐饮Web APP设计与实现[J].科技创新与应用,2023,13(36):128-132+136.DOI:10.19981/j.CN23-1581/G3.2023.36.30.
  17. 张娅妮,刘霞.微信扫码点餐小程序的设计与实现[J].电脑与信息技术,2023,31(04):62-66.DOI:10.19414/j.cnki.1005-1228.2023.04.011.
  18. 王侠,汪进敏,师瑜,等.“快吃”微信点餐小程序的设计与运营构想[J].中国质量万里行,2023,(02):62-65.
  19. 宁功林.基于微信小程序的大学校园点餐管理系统设计与实现[J].华东科技,2022,(02):77-79.
  20. 唐永洋,许嘉洁,乔波.基于MongoDB和微信小程序的点餐系统的设计与实现[J].电脑与信息技术,2021,29(01):25-27.DOI:10.19414/j.cnki.1005-1228.2021.01.008.

致  谢

在完成本次 Spring Boot 咖啡销售系统毕业设计的过程中,我收获了诸多宝贵的经验,也感受到了成长的喜悦,也深刻体会到理论与实践相结合的重要性。在这里我特别感谢我毕设的导师。在整个毕设过程中老师不但给我指明方向也给予我专业的指导,给了我很大的帮助也让我在探索中不断突破自我不断提升我的专业能力,更让我学会了如何以科学的方法解决问题。

我也感谢学校为我提供了一个良好的学习环境和丰富的资源支持。让我得以接触到前沿的技术知识和开发工具,为毕业设计的顺利开展奠定了坚实基础。在开发过程中,我遇到了许多技术难题,但通过查阅大量文献资料和反复实践,我逐渐找到了解决方法。这一过程不仅锻炼了我的自主学习能力,也让我深刻体会到知识的力量。

最后我要感谢我的家人和亲朋们。在我为毕业设计忙碌的日子里,他们始终给予我无条件的支持和鼓励。他们的理解让我能够在紧张的学习中保持良好的心态,专注于项目的每一个细节。这份毕业设计是我大学生活的完美收官,也是我人生旅程中的一个重要里程碑。我将带着这份成长和感恩,继续在未来的道路上努力前行。

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

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐