系统功能概述

经过研究调查和搜集资料,同时考虑到用户体验以及所掌握的知识面,决定将用户和管理员角色所登陆的页面进行分离,这样对于用户来说,只需要关注点餐就行,对于管理员来说,只需要关注营收、订单信息等店铺运营相关即可,系统结构如下图。

从上图可以看出,外卖点餐的系统结构包括两大部分,包括:前台展示、后台管理,分别对应着不用的使用人群。其前台展示对应着用户,主要关注订餐这一核心流程,在前台展示模块中又可以细分为用户登陆授权、商品信息、收获地址、购物车等模块。其后台管理对应着商家管理员,主要关注店铺运营的整体情况,在后台管理模块可以分为商品管理,分类管理,订单管理,和管理员登录子模块。

模块需求描述

外卖点餐平台将用户和商家进行了分离,对于这种设计,降低了系统的耦合度,同时增加了平台的体验性。下面就对上图的系统结构图进行详细解释,对于前台模块,主要关注的核心就是用户完成订单并支付的操作,其流程如下图所示。

用户登陆外卖点餐平台时,系统会进行判断是否是第一次登陆该平台,如果是,那么就跳转到首次登陆页面,给用户一些操作上的指导,让用户能够更好的使用该平台,如果用户已经登陆过平台,那么就默认用户会使用该平台完成订单操作,这时直接跳转到首页即可。用户在首页可以看到商品的分类和商品的信息,而且会根据用户的喜好,自动推荐用户可能喜欢的商品。

用户针对喜欢的商品加入到购物车之后,可以继续浏览其他信息,购物车中的商品不会消失,这样人性化的操作,可以减少用户的操作,增加了用户的体验,在用户选择完商品之后,点击提交订单就可以进入订单详情页面,在订单页面可以选择收货地址,已经订餐的备注信息,在填写完信息之后,点击支付按钮,即可进行订单的支付,然后跳转到订单详情页面,并显示订单的状态和商家的电话。

在微信小程序首页中,可以点击下方中间的订单列表页面,在此页面会展示该用户的所有订单信息以及订单的状态,也可以点击某一订单查看该订单的详细信息,对于订单的状态有未支付、已取消、商家派送中、等待收货这些状态、对于未支付的状态可以点击取消和支付,会根据点击不同的行为,进入不同的状态中。

在微信小程序首页下方右侧的“我的”按钮,可以进行个人信息管理页面,在此页面会展示该用户的信息,包括用户头像、昵称、收货地址等信息,其中用户头像和昵称信息是根据用户在微信中使用的头像和昵称,对于收货地址可以进行查看、添加、删除和修改操作,收货地址集成了腾讯地图,在用户添加收货地址时,会获取用户所在位置的GPS信息,然后返回给用户,并且填写收货人、电话、详细地址等信息,对于收货人的信息前台会对输入的信息做合法性的校验,对于错误的输入样例,系统会给出相应的提示,提示系统整体的可靠性和容错性,也能间接的提示用户的体验性。

后台管理模块包括商品管理,分类管理,订单管理,和管理员登录子模块,对于商品管理模块包括查看商品、添加商品、删除商品和修改商品,对于商品图片,其真正的图片是保存到服务器本地磁盘的,其数据库仅仅保存图片的URL,在访问商品图片时,会根据数据库保存的URL访问到真正的图片,对于分类管理模块包括查看分类、添加分类、删除分类和修改分类,对于商品分类,可以将商品加一分类,将相似的商品归为一类,这样既可以方便管理商品,也可以方便用户查找某类商品,增加了用户的体验。

系统开发环境

开发环境:Windows 10 64位

软件环境:MySQL、Java、Tomcat

相关开发软件:微信开发者工具、IntelliJ IDEA、Navicat Premium

相关工具包:Maven、Spring Boot

系统后台服务设计

1. 添加商品设计

对于商品管理是商家店铺进行的,可以添加商品、修改商品和删除商品,现在就添加商品进行分析,商品添加的时序图如图4-3所示。

对于添加商品来说,需要添加商品名称、价格、描述、图片和商品所属分类等信息,当添加完成后,点击保存商品,此时会将浏览器会将信息发送到平台后台服务中,首先需要验证输入信息的合法性,如商品名称、价格等为空时,直接返回,提示管理员输入的信息不完整,当输入信息经过合法性验证,会先将图片流保存到本地文件指定的目录下,并生成一个图片的唯一的ID,然后平台根据ID和目录,生成图片的URL地址,这样就可以根据图片的URL访问到图片,然后将商品信息已经图片URL保存的数据库中,并返回本地保存的结果。

2. 收货地址设计

对于收货地址来说,是用户在小程序端自己管理的,在“我的”页面和提交订单时,都可以管理收货地址,提交订单时,默认选择地址第一个地址。

如图4-6所示,用户在添加收货地址时,需要输入收货人、联系电话、送餐地址等信息,对于联系人姓名和电话在微信端就会做合法性校验,如果输入为空,或者是联系电话不符合要求,就会立即给出相应的提示,这样避免了信息输入错误,从而导致收货时出现问题,对于送餐地址来说,会根据GPS经纬度信息去请求腾讯地图的SDK来获取用户所在的当前位置微信,然后展示给用户,用户也可以对微信信息进行手动纠正和填写其他信息,这样就可以方便的给其他人点餐,即使获取的GPS位置信息不对应,也可以手动填写。

在获取到位置信息后,用户还需要输入详细地址,如门牌号等信息,这个是从地图中获取不到的信息,当用户输入信息之后,点击添加,就会想服务后台请求保存收货地址,然后服务后台会再次对输入的信息做合法性的验证,如果验证不通过,则直接返回,并给出相应的提示,如验证通过则会将收获地址保存到数据库中,并将保存的结果返回给用户。

微信小程序实现图

以下为动态图

以下为项目截图

毕业设计 微信小程序 外卖点餐平台相关推荐

  1. 微信小程序外卖点餐系统酒店点菜系统加PHP后端接口地址完整项目thinkphp5.1外卖小程序

    微信小程序开发,这是一套,微信小程序外卖点餐系统酒店点菜系统加PHP后端接口地址完整项目. 前端打开授权登录机制,选择食物,加入购物车,堂食或打包,支付. 很适合初学者学习,微信小程序 开发者V:ha ...

  2. 基于微信小程序外卖点餐系统的设计与实现.rar(毕业设计论文+程序源码)

    摘要:随着互联网的技术的不断更新发展,人们生活水平的也在不断的提高,对于网络的依赖也越来越紧密,尤其是网上购物更是习以为常.微信点餐小程序全新打造一款线上点餐平台,它的开发与制作,是基于官方腾讯的微信 ...

  3. 基于微信小程序外卖点餐系统 点餐小程序毕业设计 毕业论文 开题报告和效果图

  4. 基于微信小程序外卖点餐系统小程序 系统的设计与实现 开题报告和效果图

    开题报告 效果图

  5. 基于微信小程序的外卖点餐平台的设计与实现-计算机毕业设计源码+LW文档

    附件3:   毕业论文(设计)开题报告 一.课题来源 导师指定 二.课题研究现状 随着互联网加移动端的普及与传播,人们的生活方式发生了很大的变化,其中一个最明显的变化就是饮食方面,相比较以前,人们吃饭 ...

  6. java微信小程序的校园外卖点餐平台 uniapp

    美食是人类永恒的话题,无论是在古代还是现代人们对美食都有一种非常的热爱在里面,但是随着时代的发展,人们可能没有更多的时间去研究美食,很多时候人们在下班或者放学之后更希望通过网络来进行订餐,为此我开发了 ...

  7. nodejs+vue 微信小程序的外卖点餐平台

    本文通过对国内外现状的分析,明确了外卖点餐平台小程序在国内外的基本情况,对系统的功能需求做出分析,此系统是由用户下单,并且完成付款,生成订单:管理端可以查看每天的订单,并且可以对菜品分类管理.菜品管理 ...

  8. nodejs+vue微信小程序的饭店外卖点餐平台系统

    系统模块分析是对系统的各个模块做出相应的说明以及解释.此系统的模块分别有用户模块.服务端模块和管理端模块这两大基本模块,其中服务端模块包括了首页.菜品信息.菜品咨讯.购物车.我的等:而管理端模块则包括 ...

  9. 基于安卓android和微信小程序的点餐管理系统毕业设计(源码讲解)

    作者简介:Java.spring.安卓Android.ssm框架.前端.后端开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发.毕业设计开发.技术分享 怎么做基于安卓android和微信 ...

  10. asp.net+sqlserver+微信小程序社区型果蔬配送平台-计算机毕业设计源码11635

    摘  要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区型果蔬配送平台小程序被用户普遍使用,为方 ...

最新文章

  1. mysql索引数据结构图解_深入理解Mysql索引底层数据结构与算法
  2. 做折线图的软件_三星Galaxy Labs,它由4个下层软件构成,各有其用
  3. 消除python变量的值_SPSS变量值标签的批量设置、复制、显示及删除问题
  4. Bootstrap4+MySQL前后端综合实训-Day05-AM【MySQL数据库(SQLyog软件基本操作、架构设计器)、eclipse(JDBC开发-添加驱动、构建路径、增删改查基本测试)】
  5. [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率
  6. 深入浅出 Java 中的包装类
  7. 2015年上半年 软件设计师 上午试卷 综合知识-2
  8. python内置函数分类_Python 69个内置函数分类总结
  9. lua __index __newindex upvalue 示例
  10. 人工智能系统研究的9大挑战和4大趋势
  11. Windows8Windows Phone 做一个图片效果
  12. 毕业10年,阻碍你职业发展的最大“拦路虎”到底是什么?
  13. 权限Permissions
  14. 中移苏研大规模资源高可用研究及实践
  15. 揭示:为什么别人的超级浏览器防关联有效
  16. Git学习:来自fengyu的b站听课笔记
  17. 修改Win10系统文件夹C:\Users\下用户名为中文方法
  18. win10小娜_这个版本的win10系统不到10G,运行比win7还流畅,低配电脑的福音
  19. 微信老外产品经理:《中国移动应用设计趋势》
  20. 如何入门网络安全有什么条件呢?持有NISP或CISP证书可敲门

热门文章

  1. Java多线程编程实战指南(核心篇)读书笔记(二)
  2. 全球及中国硬盘用基板行业发展前景预测与投资战略规划研究报告2022-2028年
  3. 智慧环卫车辆监控管理系统方案
  4. linux根分区inode满了该怎么办,linux inode已满解决方法 新的问题No space left on device...
  5. html网页音乐手机播放,网页添加背景音乐代码,支持手机端的html5代码播放器
  6. (CNVD-2021-49104) 泛微E-Office v9.0任意文件上传漏洞
  7. win10如何安装系统得日语输入法(亲测)
  8. Picasa是什么软件
  9. app版windows95
  10. flash builder 4 序列号