博主简介:🍅博客专家、Java领域优质创作者、特邀作者、华为云/阿里云等平台优质作者、专注于IT技术领域和学生毕业项目实战,指导学生毕业设计并参与学生毕业答辩指导🍅

技术范围:✌Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能与大数据、单片机开发、物联网设计与开发设计、安卓app、大数据、物联网、机器学习等设计与开发、简历模板、学习资料、面试题库、就业指导、技术互助等✌。

业务领域:✌免费功能设计定制、任务书、中期检查PPT、开题报告、系统功能实现、项目定制、论文辅导、撰写和降重、长期答辩辅导答疑、远程会议一对一专业讲解答辩辅导、模拟演练答辩、和代码讲解理解逻辑思路✌。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习


摘 要

自从计算机发展开始,计算机软硬件相关技术的发展速度越来越快,在信息化高速发展的今天,计算机应用技术似乎已经应用到了各个领域。在餐饮行业,除了外卖以外就是到店里就餐,在店里就餐如果需要等待点餐的话,用户的体验度就会急剧下降,很多餐饮店也开始开发线上订餐的系统,这样的系统给用户带来了新的体验,尤其是在时间和空间上,让使用者不管身在何处,只要连上网就能够选购菜品,进行订餐。外卖系统小程序的开发项目以Springboot框架为基础,基于B/S模式,采用Java编程语言,使用MySQL数据库,首选对外卖系统小程序的各个功能以及用户的需求做出了解释,然后根据用户线上订餐的需求,再介绍了系统的总体设计以及其详细设计,给用户提供了外卖系统小程序的总体结构的搭建方法。从而满足用户线上订餐的需求。

外卖系统小程序主要功能模块包括首页、轮播图、公告消息、资源管理(美食资讯、资讯分类)商城管理(菜品信息、分类列表、订单列表)系统用户(管理员、注册用户、员工)模块管理(口味管理、套餐信息、套餐分类、订单信息、订单退款、订单状态、已完成订单),采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作。本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对商家内部订餐管理系统的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现外卖系统小程序和部署运行使用它。

第1章 绪论

1.1 研究背景

由于人们生活水平的提高以及生活节奏的加快,很多用户都选择线上选购商品,尤其是从2020年疫情以来,线下的很多行业都收到了很大的冲击,比如服装、餐饮行业,大家都为了避免人口聚集而很少去实体店消费,导致实体经济不断萧条,与之对应的线上交易正如火如荼,目前大多数行业因为疫情或者发展需要都在逐步的将各自的业务投放到了线上,其中主要是以电商服务为主导的互联网平台。很多企业都开始实现线上购买、配送,目前比较火的美团、饿了么等都是将商品放到线上进行售卖,像目前如果主要致力于自己的餐饮店线上点餐,同时紧紧围绕线上点餐来展开。通过互联网平台的赋能,能够给餐饮提供智能化的服务,在为用户提供实质性便利的同时,提高自己餐饮的服务质量。所以外卖系统小程序更加符合时下餐饮行业的需求,更加能适应餐饮行业目前的竞争压力[1]。该外卖系统小程序以“互联网+”B2C服务为模式,在为用户提供在线自主选择菜品进行购买服务的同时,可以帮助餐饮店实现销量的突破,同样也可以为餐饮行业的智能化发展做出努力。

1.2 研究意义

外卖系统小程序其研究的目的就是让传统的电话订餐或者到店订餐的方式转化为通过网页浏览菜品进行订餐的形式,解决了传统就餐耗时耗力的问题,系统的具体研究意义如下:

(1)从餐厅的角度来说,利用计算机网页来实现一个新型的线上订餐平台,可以提高餐厅的竞争力,为餐厅开辟一条新的销售途径,有利于餐厅更加长远的发展。
(2)从消费者的角度来说,外卖系统小程序的实现,能够给用户带来极大的便利,为用户提供一个更加优质的订餐平台,让用户在繁忙的工作、生活中,不用在进行到店就餐,上网进入系统就可以选购自己喜欢的食物,享受送货上门服务。
(3)从社会发展的方面来说,实现餐厅的线上销售无疑是一种趋势,如何现状用户消费的潮流,是保证餐厅可持续性发展的基础

1.3 国内外研究动态

在国外的餐饮业中,发展最快的属美国,日本在战后也引进了美国的经验,在接待和连锁经营有了长足的发展,随后推广至欧洲,慢慢全世界都在使用外卖系统小程序了。而在国内,最开始使用订餐系统是在2002年上海的一家高档餐厅内,随后餐厅在线订餐系统以其的优势,节省了时间和人力,现如今各个行业都开始通过线上交易的方式来提高自己的营业额,自从2020年的新冠肺炎疫情爆发到现在,大批量的实体都收到了影响,给实体带来了很大的冲击,因此结合目前互联网技术的火热以及用户订餐的现状开发一个外卖系统小程序是很有必要的。

外卖系统小程序不仅可以方便用户查询、购买,提高店铺的销量,也可以减轻使用者以及商家的工作量,便于用户通过网络维护管理,提高了服务效率,同时也方便用户在线选购,带来了一种全新的购物体验。

第2章 相关技术介绍

2.1 Springboot框架

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。

2.2 Java语言与JDK开发环境

Java是美国sun公司所推出的一款程序设计语言,其能够在多个平台内应用,具有良好兼容性,进而其凭借自身优势在数据中心、个人PC与科技超级计算机等平台内广泛应用,具有目前最为庞大的开发者专业社群。

JDK为美国sun公司为java开发员所推出的一款全新产品,要是没有JDK的情况下,所安装的java程序也就无法运行[4]。

2.3 B/S结构

基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行[5]。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户。

在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互[6]。

2.4 MySQL数据库

MySQL经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷[7][8]。
针对本文中设计的外卖系统小程序在实际的实现过程中,最终选择MySQL数据库的主要原因在于在企业的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的MySQL来对外卖系统小程序后台数据进行存储操作[9][10]。

2.5 微信开发者工具

微信开发者工具是一款专为小程序开发而设计的应用,它不断改进,提供了便捷的操作方式,并且在开发过程中可以通过微信扫描二维码来访问,从而实现快速、准确的小程序开发和调试。
根据用户的需求,我们将采用不同的屏幕大小来制作小程序。

在完成了视图布置之后,可以通过执行编辑功能,快速更改当前的视图界面。
控制台:方便调试打印输出信息。

将代码上传至腾讯服务器,并在审核过程中填写版本号和备注信息,以确保代码的安全性和准确性。
通过查看资源文件,我们可以快速地调整相关项目的文件目录,从而实现断点调试。
使用远程调试技术,无论是在手机端还是PC端,都能够轻松地进行开发工作。
本地数据存储:显示的是本地存储的数据。

通过使用子父层级结构,我们可以更容易地进行视图调试。
微信的代码体积应该保持在2M 以内,而且在开发过程中,应该严格检查合法域名信息,并且为小程序的后台配置服务器域名。
微信开发者工具已经成为了开发过程中不可或缺的一部分,并且正在不断地改进和完善。

第3章系统需求分析

3.1可行性分析

可行性分析是系统分析的第一步,通过可行性分析我们可以得出系统是不是值得开发,如果系统的开发是不可信的,那么就没有必要再进行下面的操作,对于本外卖系统小程序在可行性方面进行了技术、经济以及操作的分析。

3.1.1 技术可行性分析

外卖系统小程序在技术上采用的是JAVA语言、基于B/S模式,后台使用了Springboot框架、小程序框架、结合MYSQL数据库,这些技术在校期间都已经学习过,而且用这些技术开发过一些小的系统,同时在实际开发中JAVA功能强大被普通应用,因此开发技术是没有问题的。

3.1.2 经济可行性分析

开发外卖系统小程序并不需要投入太多,开发工具、服务器、数据库等,都可以通过网络搜索、下载、安装,只需要一台普通的计算机就可以完成操作,而且在系统功能规划上都是通过问卷调查了解用户需求,通过百度、知网库、学校图书馆查阅相关系统,了解它们对系统具体实现的功能需求,然后进行设计开发,不存在任何开销,因此系统的开发在经济方面是可行的。

3.1.3 操作可行性分析

外卖系统小程序在开发的时候充分了解用户群体,对于没有学习过计算机的用户也进行考虑在内,在系统的开发中首页有醒目的导航栏,使得即使没有学习过计算机课程的用户,也可以根据导航栏的提示进行操作,非常方便,因此系统在操作上是可行的。

3.2功能需求分析

(1)外卖系统小程序的功能主要分为前台用户根据自己的需求进行注册登录,浏览美食信息并对选中的菜品进行点餐操作。后台系统因职责的不同,分为管理员和员工,员工主要对菜品信息管理、订单管理进行处理,管理员则主要对用户管理、员工管理、菜品分类管理、菜品信息管理、系统管理、订单管理进行处理。

用户用例图如下所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_毕业设计

员工用例图如下所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_spring boot_02


管理员用例图如下所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_毕业设计_03

第4章系统概要设计

4.1系统体系结构

本外卖系统小程序总体的体系结构图分为前端用户体系结构和后端管理员体系结构,其具体结构图如图4-1和图4-2所示

4.1.1 小程序端用户功能结构图设计

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_04

4.1.2 后端管理员功能结构图设计

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_05

4.2系统功能设计

  • 用户管理模块
    该模块是为所有用户登录设计的,如注册用户这种普通用户登录后只能进行自己的普通功能操作(如个人信息修改),管理员能对整个系统的数据进行管理,主要是用户的登录权限以及用户登录后在系统里的操作权限。
  • 菜品信息模块
    普通用户和菜品信息存在学习关系,关系为一对多,根据菜品信息用户将菜品购买数据传入到订单数据中,操作人为普通用户,然后生成订单列表,普通用户查看个人历史订单列表,可以进行数据销毁。
  • 美食资讯模块
    普通用户和美食资讯存在学习关系,关系为一对多,根据美食资讯来将评论数据传入到美食资讯数据中,操作人为普通用户,然后生成评论列表,普通用户可以进行数据销毁。
  • 菜品信息维护模块
    操作人来录入菜品信息数据,点击菜品信息录入按钮,依次填写要录入的菜品信息数据,点击提交按钮,将数据提交至数据库,然后刷新菜品信息数据页面,每条数据右边有删除和编辑按钮,来完成相应的删除和更新功能。
  • 菜品分类模块
    管理员点击菜品分类管理菜单,点击新增添加菜品分类,添加菜品分类数据,填写标题、内容、类别、图片,提交成功后,菜品分类管理页面刷新,新数据成功载入页面。
  • 订单管理模块
    订单管理分为用户订单页面和商家订单管理页面,用户登录系统后,选择想要加购的美食,生成订单,商家查询该订单信息,是否生成已支付订单,并对此订单点击发货。

第5章详细设计与实现

5.1 小程序用户功能模块

5.1.1 小程序首页界面

当进入外卖系统小程序的时候,首先映入眼帘的是系统的导航栏,导航栏上边是轮播图以及公告栏,其主界面展示如下图

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_java_06

5.1.2 注册界面

不是外卖系统小程序中正式会员的是可以在线进行注册的,当用户点击“注册”按钮,填写上自己的账号+密码+确认密码+昵称+头像等,再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可会员注册成功。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_java_07

5.1.3 登录界面

外卖系统小程序中的前台上注册后的会员是可以通过自己的账户名和密码进行登录的,当会员输入完整的自己的账户名和密码信息后,点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到外卖系统小程序的首页中;否则将会提示相应错误信息

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_java_08


【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_微信小程序_09

5.1.4 菜品信息详情界面

当访客点击了任意菜品分类后将会进入该款菜品的详情界面,可以了解到该菜品的图片信息、分类信息、价钱信息等,同时可以对该菜品进行加购、评论

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_毕业设计_10


【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_微信小程序_11

5.1.5购物管理界面

当用户点击“购物车”按钮则会显示自己加入购物车的美食信息,然后对其进行购买管理,购物管理界面如下图6-8所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_12

5.1.6 订单管理界面

在点击导航栏上的“订单管理”后,会显示自己提交的所有的订单,可以按照订单状态等进行查看,订单管理界面如下图6-9所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_java_13

5.2管理员功能模块

5.2.1 用户管理界面

外卖系统小程序中的管理人员是可以对前台注册的普通用户进行管理。用户管理如下图6-10所示。

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_微信小程序_14


员工管理界面如下

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_15

5.2.2菜品信息界面

外卖系统小程序中的管理人员是可以对外卖系统小程序内的不同菜品分类下的菜品信息进行维护和管理的,菜品信息管理界面如下图

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_毕业设计_16

5.2.3 菜品分类界面

外卖系统小程序中的管理人员是可以对外卖系统小程序内的商品的类别进行管控。菜品分类添加界面

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_17

5.2.4订单管理界面

外卖系统小程序中的管理人员是可以对外卖系统小程序内的订单进行操作的,订单管理界面如下图

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_18

6.3员工功能模块

6.3.1套餐信息界面

外卖系统小程序中的员工是可以对外卖系统小程序内的套餐信息进行查看的,套餐信息界面如下

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_19

6.3.2 订单退款界面

外卖系统小程序中的员工是可以对外卖系统小程序内的订单退款信息进行查看的,订单退款信息界面如下图

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_20

文档截图

【万字文档+PPT+源码】微信小程序-外卖点餐系统-可用于毕设-课程设计-练手学习_课程设计_21