基于微信小程序的外卖小程序的研究与开发

本文探讨了如何利用微信小程序开发一款外卖点餐应用,涉及前端API接口使用、Java后端技术(B/S结构,MySQL数据库),以及详细描述了系统设计、功能模块实现和数据库设计过程,强调了用户体验和功能完整性。
摘要由CSDN通过智能技术生成

摘 要

随着科技的进步,微信小程序慢慢进入了生活当中,由于轻便快捷,方便使用,基于微信这个大平台,使得小程序飞速发展,趋于成熟,因此,针对用户对外卖点餐方面的需求,特开发了本外卖小程序。
该外卖小程序分为小程序前端和Java后端系统,遵循数据前后端交互,相互分离。前端小程序应用官方提供的API文档,主要功能为查看外卖菜品信息、外卖点餐以及管理个人订单等。后端系统则是由Java语言实现,基于B/S结构,使用MySQL数据库开发,使得管理员、商家后台界面简单整洁,便于管理员和商家使用和管理。
本外卖小程序拥有界面简洁、操作简单易懂,管理方便,功能齐全等优点,具有很高的应用价值。

关键词:外卖小程序;Java语言;B/S结构;MYSQL数据库

ABSTRACT

With the advancement of technology, WeChat Mini Programs have slowly entered life. Because they are light, fast and easy to use, based on WeChat’s large platform, Mini Programs have developed rapidly and become more mature. Therefore, in response to the needs of users for ordering food, special Developed this takeaway applet.
The takeaway applet is divided into an applet front-end and a Java back-end system, which follow data front-end and back-end interactions and are separated from each other. The API document officially provided by the front-end applet application mainly functions to view the information of takeaway dishes, order takeaway meals, and manage personal orders. The back-end system is implemented in Java language, based on the B/S structure, and developed using MySQL database, making the back-end interface of administrators and merchants simple and tidy, which is convenient for administrators and merchants to use and manage.
This small takeaway program has the advantages of simple interface, easy to understand operation, convenient management, complete functions, etc., and has high application value.

Keywords: Takeaway applet; Java language; B/S structure; MYSQL database

目 录

1 绪 论 1
1.1课题背景 1
1.2设计原则 1
1.3论文组织结构 2
2系统关键技术 3
2.1微信小程序 3
2.2微信小程序API接口 3
2.3 JavaScript简介 3
2.4 MYSQL数据库 4
3系统分析 5
3.1可行性分析 5
3.1.1 技术可行性 5
3.1.2经济可行性 5
3.1.3操作可行性 5
3.1.4时间可行性 5
3.2系统性能分析 6
3.3 系统功能分析 6
3.4系统流程分析 8
3.4.1注册流程 8
3.4.2登录流程 9
3.4.3添加信息流程 10
4系统设计 11
4.1系统设计要求 11
4.2系统结构设计 11
4.3系统顺序图设计 12
4.3.1 登录顺序图 12
4.3.2 注册顺序图 12
4.4数据库设计 13
4.4.1数据库概念结构设计 13
4.4.2数据库逻辑结构设计 15
5 系统的实现 18
5.1微信端功能模块的实现 18
5.1.1注册登录界面 18
5.1.2首页界面 18
5.1.3商家界面 19
5.1.4菜品详情界面 20
5.1.5购物车界面 21
5.1.6我的订单界面 22
5.1.7用户信息界面 23
5.2服务端功能模块的实现 24
5.2.1服务端登录界面 24
5.2.2用户管理界面 25
5.2.3商家管理界面 25
5.2.4菜品信息管理界面 26
5.2.5菜品分类管理界面 27
6系统测试 28
6.1测试任务 28
6.2测试的原则 28
6.3测试的目标 29
6.4测试方法 30
6.5测试结论 30
结 论 31
参考文献 32
谢 辞 33

1 系统设计

4.1系统设计要求
(1)软件功能清晰明了,简化用户操作,提升使用者体验,减少下拉菜单这种降低体验的操作。
(2)软件的功能要尽量完整,也要全面。要求能够实现查看菜品、外卖点餐等。
(3)经常的在以后版本更新完善软件,使得软件保持一个新鲜度,也可以做一些活动来促进用户使用软件。
(4)减少软件使用过程中出错,做好优化,遵循开发逻辑,降低bug的产生率以提升用户体验。
4.2系统结构设计
系统的设计和划分是系统的核心研究问题,以确定整体结构和功能模块。该系统的结构化设计的思想,是自顶向下的方式将系统分成若干个子系统,以及反过来的子系统分成模块,其被划分成子模块,层划分各计算机可执行模块可迄今用作一个单独的程序。
本外卖小程序结构图如图4-1所示。
在这里插入图片描述

图4-1 系统功能模块图
4.3系统顺序图设计
4.3.1 登录顺序图
用户在登录时,首先进入系统登录窗口,用户需要输入用户名和密码,点击登录按钮进行登录操作,系统会以用户名和密码为参数在数据库中进行登录信息的验证,验证成功则登录成功,进入对应用户主界面。登录模块顺序图如图4-2所示。
在这里插入图片描述

图4-2 登录顺序图
4.3.2 注册顺序图
未有账号的用户可进入注册界面进行注册操作,在注册界面输入注册信息,点击提交按钮,系统首先判断用户名是否存在,存在则提示重新输入,不存在则验证注册信息是否正确,正确则在数据库中添加注册数据,提示注册成功。用户注册模块顺序图如图4-3所示。
在这里插入图片描述

图4-3 注册顺序图
4.4数据库设计
数据库技术是资源管理最好的方式。数据库设计可以创造出属于自己的良好的设计方式,建立系统。它可以使系统准确的把数据库中的信息提取出来并且加以应用来满足所有人的需要。数据库的选择要考虑多方面的因素:如用户更适合使用哪种数据库;具体的功能比较;各自的性能优劣分析;相互之间的兼容性;平台的支持应用性;相关的技术支持。本设计采用 MySQL,更加适合该系统的完成。
4.4.1数据库概念结构设计
数据库概念结构设计通俗来说就是把前面所做的需求分析报告转变为抽象的信息结构,数据库概念结构设计相比数据模型要更加稳定、抽象和独立。它的特点有方便修改、能够容易理解、转换成层次、关系等数据模型变得更加容易,对现实世界反映客观真实充分等。数据库设计这块,在描述概念模型工具的选择上通常是用E-R模型(实体-联系模型)表现出来。E-R模型这个数据建模工具它被广泛的使用在数据库设计中,它是一种针对用户的表达方式,没有任何DBMS约束。构成该模型的成分有属性、实体集及联系集。矩形框表示实体集,椭圆形表示属性,菱形框表示实体与实体的联系。下面我们展示外卖小程序的主要的实体图。
1、管理员实体属性图如图4-4所示
在这里插入图片描述

图4-4 管理员实体属性图
2、菜品实体属性图如图4-5所示
在这里插入图片描述

图4-5 菜品实体属性图
3、订单实体属性图如图4-6所示
在这里插入图片描述

图4-6 订单实体属性图
4、商家实体属性图如图4-7所示
在这里插入图片描述

图4-7 商家实体属性图
5、用户实体属性图如图4-8所示
在这里插入图片描述

图4-8 用户实体属性图
4.4.2数据库逻辑结构设计
数据库的逻辑结构的设计需要将前面概念设计得到的E-R图转换成关系模型。接着就是优化关系模型,逻辑结构设计的过程表现如下
在这里插入图片描述

图4-4 逻辑结构设计的过程
优化关系模型有许多方式,这些方式包括了对数据之间的依赖进行确定;处理关系模式间的数据依赖,一些多余的联系需要及时清理;要明白和界定各个关系模式在第几范式;关系模式的分解或合并处理也是必要的。设计中对关系模型的优化就可以按照上述提示进行操作。
本次开发的外卖小程序它的数据结构就比较清晰明了。开发出来外卖小程序的后台数据库是由许多的数据表组成的,下面我们将选取一部分数据表进行具体描述:
表4-1 users管理员信息表
字段名称 字段意义 字段类型 字段长度 是否主键 能否为空
id 编号 bigint 20 是 否
username 用户名 varchar 100 否 是
password 密码 varchar 100 否 是
role 角色 varchar 100 否 是
addtime 添加时间 timestamp 否 是

表4-2 caipinxinxi菜品信息表
字段名称 字段意义 字段类型 字段长度 是否主键 能否为空
id 编号 bigint 20 是 否
addtime 添加时间 timestamp 否 是
caipinmingcheng 菜品名称 varchar 200 否 是
caipinfenlei 菜品分类 varchar 200 否 是
tupian 图片 varchar 200 否 是
caipinjieshao 菜品介绍 longtext 否 是
shangjiazhanghao 商家账号 varchar 200 否 是
shangjiamingcheng 商家名称 varchar 200 否 是
dianpuming 店铺名 varchar 200 否 是
thumbsupnum 赞数 int 11 否 是
crazilynum 踩数 int 11 否 是
clicktime 最近点击时间 datetime 否 是 clicknum 点击次数 int 11 否 是 price 价格 float 否 是

表4-3 orders订单信息表
字段名称 字段意义 字段类型 字段长度 是否主键 能否为空
id 编号 bigint 20 是 否
addtime 下单时间 timestamp 否 是
orderid 订单编号 varchar 200 否 是
tablename 商品表名 varchar 200 否 是
userid 用户编号 bigint 20 否 是
goodid 商品编号 bigint 20 否 是
goodname 商品名称 varchar 200 否 是
picture 商品图片 varchar 200 否 是
buynumber 购买数量 int 11 否 是
price 价格 float 否 是
discountprice 折扣价格 float 否 是
total 总价格 float 否 是
discounttotal 折扣总价格 float 否 是
type 支付类型 int 11 否 是
status 状态 varchar 200 否 是
address 地址 varchar 200 否 是

表4-4 shangjia商家信息表
字段名称 字段意义 字段类型 字段长度 是否主键 能否为空
id 编号 bigint 20 是 否
addtime 添加时间 timestamp 否 是
shangjiazhanghao 商家账号 varchar 200 否 是
mima 密码 varchar 200 否 是
shangjiamingcheng 商家名称 bigint 20 否 是
dianpuming 店铺名 bigint 20 否 是
dianpudizhi 店铺地址 varchar 200 否 是
lianxiren 联系人 varchar 200 否 是
lianxifangshi 联系方式 varchar 200 否 是
shangjiatupian 商家图片 varchar 200 否 是
xiuxishijian 休息时间 varchar 200 否 是
shangjiajieshao 商家介绍 longtext 否 是
money 余额 float 否 是

表4-5 yonghu用户信息表
字段名称 字段意义 字段类型 字段长度 是否主键 能否为空
id 编号 bigint 20 是 否
addtime 添加时间 timestamp 否 是
zhanghao 账号 varchar 200 否 是
mima 密码 varchar 200 否 是
xingming 姓名 bigint 20 否 是
nianling 年龄 bigint 20 否 是
xingbie 性别 varchar 200 否 是
shouji 手机 varchar 200 否 是
zhaopian 照片 varchar 200 否 是
money 余额 float 否 是

2 系统的实现

5.1微信端功能模块的实现
5.1.1注册登录界面
未有账号的用户可进行注册操作,注册后可进入登录界面进行登录系统,注册登录界面展示如图5-1所示。
在这里插入图片描述

图5-1 注册登录界面图
5.1.2首页界面
用户通过微信平台打开本外卖小程序,登录后进入了系统的首页,在首页用户可查看所有菜品,首页界面展示如图5-2所示。
在这里插入图片描述

图5-2 首页界面图
5.1.3商家界面
用户在商家界面可查看所有商家,并可选择查看详情,商家界面展示如图5-3所示。
在这里插入图片描述

图5-3 商家界面图
5.1.4菜品详情界面
用户可选择菜品查看菜品详情信息,并可进行加入购物车和立即购买操作,菜品详情界面展示如图5-4所示。
在这里插入图片描述

图5-4 菜品详情界面图
5.1.5购物车界面
用户在购物车界面可查看购物车已有菜品信息,并可对其进行删除、修改数量或者结算操作,购物车界面如图5-5所示。
在这里插入图片描述

图5-5 购物车界面图
5.1.6我的订单界面
用户在我的订单界面可查看个人订单信息,我的订单界面如图5-6所示。
在这里插入图片描述

图5-6 我的订单界面图
5.1.7用户信息界面
用户可修改个人信息,用户信息界面如图5-7所示。
在这里插入图片描述

图5-7 用户信息界面图
5.2服务端功能模块的实现
5.2.1服务端登录界面
管理员和商家要想进入对于角色后台必须进行登录操作,服务端登录界面展示如图5-8所示。
在这里插入图片描述

图5-8 服务端登录界面图
5.2.2用户管理界面
管理员可进行查看、修改和删除用户信息,用户管理界面展示如图5-9所示。
在这里插入图片描述

图5-9 用户管理界面图
5.2.3商家管理界面
管理员可增删改查商家信息,商家管理界面展示如图5-10所示。添加商家界面展示如图5-11所示。
在这里插入图片描述

图5-10商家管理界面图
在这里插入图片描述

图5-11添加商家界面图
5.2.4菜品信息管理界面
商家可增删改查菜品信息,管理员可查看、修改和删除菜品信息,菜品信息管理界面展示如图5-12所示,添加菜品信息界面展示如图5-13所示。
在这里插入图片描述

图5-12 菜品信息管理界面图
在这里插入图片描述

图5-13 添加菜品信息界面图
5.2.5菜品分类管理界面
商家可增删改查菜品分类信息,管理员可查看、修改和删除菜品分类信息,菜品分类管理界面展示如图5-14所示。
在这里插入图片描述

图5-14 菜品分类管理界面图

  • 28
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值