基于安卓移动端的点餐系统

摘 要

现如今,人们的生活节奏加快于是就对用餐的时间有了一定的要求。随着计算机网络技术的发展,结构目前手机的普及。在线订餐系统也就运营而出了,不仅可以解决用户的用餐问题同时还解决了餐厅的销量。通过对点餐系统的设计,改变了传统了点餐方式通过电子信息和信息化技术来实现不接触点餐,避免了人手不足造成的点餐取餐时间过长的问题。随着互联网技术的发展,点餐系统的开发技术逐渐成熟,开发成本也快速的下降。
本系统的开发和运行将会给人们的用餐带来巨大的便捷,使得用餐摆脱了时间和空间的限制。本系统内部后台采用Java开发,系统的总体划分为前端和后端。前端模块主要是用来展示现相关的订餐页面和餐点的数据渲染;后端则主要体用一些业务和逻辑上的处理服务。课题将运用电子商务系统规划设计与分析理论,项目管理理论,Push技术理论等。对中国点餐系统的运营模式发展的基础上,设计一套切实可行的点餐系统。

关键词:在线订餐;点餐系统;UML;软件开发;MySQL数据库

Abstract

Nowadays, people’s pace of life accelerates, so there are certain requirements for dining time. With the development of computer network technology, the structure of the current popularity of mobile phones. The online ordering system is also operational, which can not only solve the problem of users, but also solve the sales of restaurants. Through the design of the ordering system, the traditional way of ordering is changed through electronic information and information technology to achieve no contact ordering, avoiding the problem of too long ordering time caused by the lack of manpower. With the development of Internet technology, the development technology of the ordering system is gradually mature, and the development cost is also falling rapidly reduced.
The development and operation of this system will bring great convenience to people’s dining, so that the dining can get rid of the limitation of time and space. The internal background of the system is developed by Java, and the overall system is divided into front end and back end. The front-end module is mainly used to show the data rendering of the relevant ordering pages and meals; the back-end module mainly uses some business and logical processing services. The project will use the theory of electronic commerce system planning, design and analysis, project management theory, Push technology theory, etc. On the basis of the development of the operation mode of the Chinese ordering system, a set of practical ordering system is designed.

Keywords: Online ordering; ordering system; UML; software development; MySQL database

目 录

第1章 引言 1
1.1 研究背景 1
1.2 选题意义 1
1.3 研究现状 1
1.4 研究内容 3
1.5 论文结构 3
第2章 相关理论概述 4
2.1 HTML简介 4
2.2 层叠样式表技术 4
2.3 AJAX技术 4
2.4 MySQL数据库 4
第3章 点餐平台系统分析 6
3.1 需求概述 6
3.2 功能需求分析 6
3.3 非功能需求分析 8
3.4 可行性分析 8
第4章 系统的详细设计 10
4.1 系统架构 10
4.2 系统主要模块功能设计 11
4.3 数据库设计 12
第5章 点餐平台的实现 16
5.1 点餐平台前台实现 16
5.2 点餐平台后台实现 23
第6章 点餐平台测试 27
6.1 系统测试目标 27
6.2 测试方法 27
6.3 测试用例 27
6.4 测试结果 29
第7章 总结 30
参考文献 31
致 谢 31

第1章系统的详细设计

4.1系统架构
系统功能模块结构图反映了在线订餐系统的系统功能模块的划分,本系统的主要是实现了两个用例模块一个是用户端另一个是管理员端。
(1)管理员端:
用户信息管理:实现了对系统内部用户信息的管理。
商品管理:实现了对系统内部商品信息的管理。
订单管理:实现了对系统内部用户的订单信息的管理。
登录功能:实现了管理员账号和密码的验证。
分类管理:实现了对系统内部商品菜品信息的分类管理。
(2)用户端:
用户登录:验证了用户的账号和密码的匹配性并对用户进行分流。
用户注册:实现了游客用户的账号注册。
商品浏览:实现了对商品信息的浏览和查看。
购物车:实现了对商品信息的结算操作,添加至购物车等功能。
商品购买:实现了对商品信息的下单购买操作。
个人信息管理:实现了对个人信息的管理。
系统总体功能结构图,如图4-1所示,
在这里插入图片描述

图4-1 系统总体功能结构图

4.2系统主要模块功能设计
4.2.1登录模块分析
在系统内部进行若干的操作都需要是在登录状态下所操作的,因为只有用户在登录之后系统才可以获取到当前用户的基本信息并根据用户的基本信息来操作相关的业务流程。具体的登录流程图如图4-2所示。
在这里插入图片描述

图4-2 登录流程图
4.2.2订餐模块分析
当用户完成登录操作之后进入到系统主界面就可以在系统内部进行点餐和查看,订餐模块的功能图如下图4-3所示。
在这里插入图片描述

图4-3 订餐流程图
4.3数据库设计
4.3.1逻辑设计
数据库的设计是针对系统内部用户的需求进行的,在某一个具体的应用场景之下与用户的需求进行动态的绑定。数据库作为整个项目的后备数据支柱,是整个软件的重要组成部分。由于数据库内部的复杂性,为了支持各种语言的开发特此使用Mybatis作为java语言和Mysql的对接桥梁。在进行数据库表的设计中是一个反复探索,不断迭代的过程。
管理员属性图如图4-4所示。
在这里插入图片描述

图4-4 管理员信息实体属性图
用户属性图如图4-5所示。
在这里插入图片描述

图4-5 用户信息实体属性图
评论信息实体属性图如图4-6所示。
在这里插入图片描述

图4-6 评论信息属性图
产品信息实体属性图如图4-7所示。
在这里插入图片描述

图4-7 产品信息实体属性图

专区信息实体属性图如图4-8所示。
在这里插入图片描述

图4-8 权限信息实体属性图
系统总体E-R图如图4-9所示。
在这里插入图片描述

图4-9 系统总体E-R图
4.3.2物理设计
物理设计是确定数据库内部表格结构的大小,变量类型的以及存储的数据引擎。系统内部的数据信息表字段都是具有一定的现实意义,都代表这不同的数据含义,具体的数据表表格字段的设计如下所示。
用户信息表如表4-1所示。
表4-1 用户信息表
字段名 说 明 类 型 长 度 可否为空 主键
Id 用户编号 varchar2 20 否 是
Name 账号 varchar2 20 否 否
Password 用户密码 varchar2 20 是 否
Status 状态 varchar2 20 是 否
Address 地址 varchar2 20 是 否
Phone 手机 varchar2 11 否 否

权限信息表如表4-2所示。
表4-2 权限信息表
字段名 说 明 类 型 长 度 可否为空 主键
Id I varchar2 50 否 是
Name 权限名 varchar2 20 否 否
Description 描述 varchar2 50 否 否
产品信息表如表4-3所示。
表4-3 产品信息表
字段名 说 明 类 型 长 度 可否为空 主键
Id id varchar2 100 否 是
name 名称 varchar2 99 否 否
Price 价格 Double 4000 否 否
Zan 点赞数 Int 100 否 否
Number 库存 Int 20 否 否
Image_url 封面 varchar2 30 否 否
Description 描述 Varchar2 100 否 否
管理员信息表如表4-4所示。
表4-4 管理员信息表
字段名 说 明 类 型 长 度 可否为空 主键
Id ID varchar2 20 否 是
Password 管理员密码 varchar2 20 否 否
Name 账号 Varchar2 20 否 否
评论信息表如表4-5所示。
表4-5评论信息表
字段名 说 明 类 型 长 度 可否为空 主键
Id 评论id Varchar2 100 否 是
Content 内容 Varchar2 1000 否 否
create_time 发表时间 Datetime 100 否 否
PubilishId 发表人id Varchar2 99 否 否

第2章 点餐平台的实现

5.1点餐平台前台实现
5.1.1点餐平台登录界面
登录界面实现了用户的验证,在该模块要对所有的访问者进行身份验证,通过了验证才可以进入系统。如图5-1所示。
在这里插入图片描述

图5-1 登录界面
系统后台服务器通过/backLogin接口来处理和接受用户的基本请求,注册核心代码如下图5-2所示。
在这里插入图片描述

图5-2注册核心代码
5.1.2点餐平台注册页面
注册页面的实现主要是在前端设置一个form表单,用户将个人信息进行填写然后点击注册按钮来进行注册。用户注册时系统后台会检查用户所填写的账号是否已经注册过了,如果已经注册过了,那么就会提醒用户该想用户已经注册过,需要重新进行填写。如图5-3所示。
在这里插入图片描述

图5-3 注册页面
系统内部的注册接口为:“/registerUser”,实现了对用户注册业务逻辑的判断。
如下图5-4所示。
图5-4用户注册业务逻辑判断核心代码
5.1.3点餐平台主页
当用户登录成功之后就会进入到系统的主界面,订餐界面主要流程是用户在系统主页开始选择所要选择的食品、饮料然后加入购物车最后统一在购物车之内进行结算处理。如图5-5所示。
在这里插入图片描述

图5-5 系统主界面
5.1.4点餐平台菜品搜索
用户进入系统可以在顶部的搜索框内输入具体的菜品信息或者输入模糊的查询关键字也可以。然后点击放大镜图标即可进行菜品的搜索。如图5-6所示。
在这里插入图片描述
图5-6 菜品搜索
菜品搜索主要是通过模糊查询进行搜索的,利用MySQL提供的concat函数、‘%’占位符和like关键字进行模糊匹配,将查询到的结果集合映射到productResultMap中,从而实现查询结果的结果集映射。核心代码如下图5-7所示。
在这里插入图片描述

图5-7查询结果核心代码
5.1.5点餐平台菜品详情
用户点击要选择是商品之后进入商品的详情页面来进行查看商品的具体信息。其中包含了对该商品的介绍信息,评价,价格,库存等等。用户可以选择数量并进行加入购物车。之后再购物车中统一进行结账下单。如图5-8所示。

在这里插入图片描述

图5-8 菜品详情
菜品详情主要是通过ID来进行传值,利用select语句根据菜品的ID将其数据信息从MySQL数据库中查询而出,然后将结果赋值给Product类。
如下图5-9所示。
在这里插入图片描述

图5-9赋值核心代码

5.1.6点餐平台购物车界面
用户将所有的商品都加入到购物车当中之后就可以对商品进行结账下单,并且在下单的时候需要填写用户的收货地址,收货人信息,手机号等。然后选择支付方式来进行支付,支付成功之后就会生成订单信息。如图5-10所示。
在这里插入图片描述

图5-10 购物车界面
购物车功能需要利用临时变量根据用户的ID去查询暂留在购物车之中的商品信息,通过合并查询可以快速的显示用户的购物车信息,通过POST方法请求服务器后台,并将数据结果通过视图信息转发到前台界面当中。如下图5-11所示。
在这里插入图片描述

图5-11转发核心代码
5.1.7点餐平台订单界面
用户在下单之后就会自动生成关于订单的信息,然后可以在订单界面查看刚才的下单,此外还可以在这里查看到当前的订单送货情况以及个人的地址信息,如图5-12所示。
在这里插入图片描述

图5-12 个人订单
个人订单信息也是依照select语句根据用户ID来查询而出的,将List结果集中的数据信息打包传入到order实体当中,通过HTTP请求发送至前台界面进行渲染。如下图5-13所示。
在这里插入图片描述

图5-13前台界面渲染核心代码
5.2点餐平台后台实现
5.2.1点餐平台分类界面
分类界面包含了对系统内部餐品信息的管理和维护,如图5-14所示。
在这里插入图片描述

图5-14 系统前台主页面
5.2.2点餐平台用户界面
用户管理界面实现了对用户的个人信息的管理。其中主要展示了系统内部的所有用户的基础信息(id,用户名,密码,地址,手机,等级)此外还提供了删除操作、改变用户等级操作。如图5-15所示。
在这里插入图片描述

图5-15 用户管理界面
通过select函数查询系统用户信息,然后利用JSON格式将其初始化在前台中,通过函数是实现对用户操作接口的渲染。如下图5-16所示。
在这里插入图片描述

图5-16对用户操作接口渲染核心代码
5.2.3点餐平台菜品管理界面
管理员可以在后台对系统内部所有展示的菜品信息进行管理操作,后台系统提供了对菜品信息的添加、删除搜索等操作。如图5-17所示。
在这里插入图片描述

图5-17 菜品管理界面
菜品信息管理也是通过服务器的数据查询得到的。SQL语句执行完毕之后们可以查找到数据的结果集,然后利用JSON格式进行传递。如下图5-18所示。
在这里插入图片描述

图5-18查找数据后利用JSON传递核心代码
5.2.4点餐平台订单管理界面
订单模块提供了对订单信息的查看、发货等操作,管理员可以在后台对订单的状态信息进行修改操作,如图5-19所示。
在这里插入图片描述

图5-19 订单管理界面
订单管理首先先将所有的订单信息查询出来,然后通过设置click触发时间,通过点击按钮来触发管理事件,以使用系统的功能。如下图5-20所示。
在这里插入图片描述

图5-20使用系统功能核心代码

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值