《基于Springboot的CoffeeRoom微信点餐系统设计与实现 .docx》由会员分享,可在线阅读,更多相关《基于Springboot的CoffeeRoom微信点餐系统设计与实现 .docx(55页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于Springboot的CoffeeRoom微信点餐系统设计与实现摘要:在这个快节奏生活的时代,人们为了充分利用时间,提高时间效率,更加愿意点外卖来解决吃饭、下午茶的问题,这相比于去餐馆点餐或者去食堂吃饭来说,节省了相当多的时间。尤其对于那些认真工作的上班族和加班加点赶工的人来说,点外卖可以充分提高时间效率。传统的点外卖方式因为不能充分的了解商品信息,又不可以手机快捷支付,并不能很好的满足人们的需求,而我们通过移动互联网点餐则可以解决传统点外卖方式存在的问题。针对如何利用移动互联网的方便快捷来解决传统外卖点餐的方式的问题,分析了O2O点餐模式,采用B/S开发模式、Springboot框架开发
2、一个基于微信平台的点餐系统,基于微信平台开发,是因为微信是当今较为主流的社交软件,用户量充足,且开发成本较低,解决了利用移动互联网更快捷更方便的方式点餐,实现用户在线点餐,商家在线接单,既提高了用户的时间利用率又减少了商家基于互联网开店的成本,同时也能为商家带来更多的客户量。Coffee Room点餐系统前后端分离,前端买家端使用vue框架开发且部署于nginx服务器,后端使用IDEA开发工具开发;同时Java语言作为后端开发的语言,使用主流的Springboot微服务框架,而数据库则使用MySQL数据库,该数据库的版本是8.0.13。Coffee Room点餐系统的实现将会为商家和用户带来很
3、大的好处。对用户来说,只需关注一个微信公众号即可足不出户的点餐,下单后直接使用微信支付即可完成点餐;而对商家来说,节省了人力资源方面的成本,也节省了入驻外卖平台的费用,利润直接进商家的微信账户。关键词:微信点餐、外卖Design and implementation of coffee room wechat ordering system based on springbootAbstract: In this era of fast-paced life, in order to make full use of time and improve time efficiency, peop
4、le are more willing to order takeout to solve the problem of eating and afternoon tea, which saves quite a lot of time compared with going to a restaurant or dining hall. Especially for those who work hard and work overtime, taking out can fully improve the time efficiency. The traditional way of or
5、dering take out can not fully understand the commodity information, nor can the mobile phone pay quickly, and can not meet the needs of people very well. However, we can solve the problems of the traditional way of ordering take out through the mobile Internet.In view of how to use the convenience o
6、f mobile Internet to solve the problem of the traditional way of taking out and ordering food, this paper analyzes the o2o mode of ordering food, and develops a ordering system based on wechat platform with B / s development mode and spring boot framework. The reason is that wechat is the mainstream
7、 social software with sufficient users and low development cost, which solves the problem of using it Mobile Internet is a faster and more convenient way to order meals, realize online ordering by users and online order receiving by businesses, which not only improves the time utilization rate of us
8、ers, but also reduces the cost of businesses to open stores based on the Internet, and also brings more customers for businesses. The front and back ends of the coffee room ordering system are separated. The front-end buyer uses Vue framework to develop and deploy in nginx server, and the back-end u
9、ses idea development tools. Meanwhile, Java language is the back-end development language, using the mainstream springboot microservice framework, while MySQL database is used, and the version of the database is 8.0.13.The implementation of coffee room ordering system will bring great benefits to bu
10、sinesses and users. For users, they only need to focus on a WeChat official account that they can not stay at home. After ordering, they can complete the order directly by using WeChat payment, while for businessmen, they save the cost of human resources, and also save the cost of the takeaway platf
11、orm, and the profits go directly into WeChat accounts of merchants.Key words: wechat ordering, takeout55目 录第一章 绪 论71.1. 系统开发的背景及意义71.1.1. 系统开发的背景及意义71.2. 国内外研究的现状81.3. 系统主要研究的内容81.4. 系统开发环境与开发工具9第二章 系统需求分析102.1. 可行性分析102.1.1. 经济可行性102.1.2. 技术可行性102.1.3. 操作可行性102.2. 系统总体需求102.3. 系统业务需求112.3.1. 买家端业务需
12、求流程图112.3.2. 卖家端业务需求流程图122.4. 系统需求分析(功能模块图)122.4.1. 买家端功能需求分析132.4.2. 卖家端功能需求分析132.5. UML系统建模142.5.1. 买家端用例图和用例规约142.5.2. 卖家端用例图和用例规约172.6. 本章小结22第三章 系统设计233.1. 功能设计233.1.1. 买家端功能233.1.2. 卖家端功能233.2. 类图设计243.3. 顺序图设计253.3.1. 买家用户系统顺序图253.3.2. 卖家用户系统顺序图283.4. 活动图353.5. 状态图363.6. 数据库设计383.7. 本章小结40第四章
13、 系统实现414.1. Coffee Room点餐系统买家端部分页面实现414.2. Coffee Room点餐系统卖家端部分页面实现43第五章 系统测试485.1. 系统测试的目的485.2. 系统测试的意义485.3. 测试计划485.4. 测试用例495.4.1. 订单功能测试495.4.2. 商品功能测试515.4.3. 类目功能测试525.4.4. 本章小结53第六章 结束语546.1. 总结546.2. 展望54参考文献55致谢57第一章 绪 论1.1. 系统开发的背景及意义1.1.1. 系统开发的背景及意义随着移动互联网的发展,互联网餐饮外卖业务备受消费者的青睐 张琼芳.互联网餐
14、饮外卖行业现状及发展策略研究J.科技创业月刊,2017,30(19):35-37.。与传统咖啡连锁品牌的比较,互联网咖啡考虑到它的便利性和目标消费者场景,它更倾向于满足白领和年轻一代的交付需求 Lily Wang.Chinas Coffee Market Being “Stirred Up” by the InternetJ.Chinas Foreign Trade,2018(03):38-39.。从本质上讲,移动互联网时代的外卖业务带来了一个信息交换和在线支付的平台,其核心是在线体验与离线供应链之间的无缝连接。2 above但为了点咖啡外卖而下载应用程序难免会占用手机的部分内存,且对于商家来
15、说,入驻一个外卖APP平台需要一定的成本且APP平台上有一定的市场竞争。据2017年发布的微信数据报告显示,截至2017年月,微信公众号月活跃账号数已经达到350万,公众号月活跃粉丝数7.97亿 张思怡,钟瑛.微信公众号影响力指数建构与量化评估J.重庆邮电大学学报(社会科学版),2019,31(03):71-79.。且据今年一月份发布的2019年的微信数据报告中了解到,2019年微信月活用户数量已达11.51亿。本系统基于微信公众号平台开发,对于消费者而言,在不下载应用程序的前提下,只需用微信关注一个公众号,即可享受互联网外卖点餐带来的方便、快捷;对于商家而言,即可减低成本来提供消费者更多的优
16、惠或者做出让消费者更满意的产品,同时为商家提供了新的宣传和销售渠道,能够基于原本的营业额实现规模的巨大扩张,也满足了广大消费者新的需求。对于开发者而言,基于微信公众号平台开发的优势:降低整个系统的耦合度,在保持接口不变的情况下,我们可以替换不同的组件快速完成需求;调试方便,在出现问题的时候,根据报错的组件快速定位问题,或者用排除法直接移除组件;提高可维护性,由于每个组件的职责单一,并且组件在系统中是被复用的,所以对代码进行优化可获得系统的整体升级。 罗凯东, 廖宁. 微信公众号的组件式O2O平台开发技术研究J. 数码世界, 2019(2):45-45.1.2. 国内外研究的现状咖啡在国外一直是
17、很受欢迎的。且由于国外消费者多年的使用习惯,国外外卖需求强大,外卖产业发达,深受消费者喜爱。包括Yelp Platform和Grub Hub等巨头在内的欧美外卖公司迅速国际化,在世界很多地方建立了连锁站点。3 above尽管喝咖啡尚未在中国人中获得足够的普及,但据不完全统计,2018年中国咖啡行业发生了18笔融资交易,主要集中在外卖品牌,精品连锁品牌和外卖连锁品牌。2 above而微信,作为较具代表性的社交媒体平台,已经成为一款现象级的社交媒体软件。在全球范围内吸引了近十亿用户的使用,其多样的功能特性满足了人们沟通交流、获取信息和娱乐消遣等多方面的需求,成为人们日常生活中不可或缺的重要组成部分
18、。3 above 虽然微信在国外的影响与国内相比较小,但近几年的数据可以明显的看出,微信作为一款强大的社交软件正不断地向国际化发展,且在全球的用户量也正持续不断地上升。1.3. 系统主要研究的内容Coffee Room微信点餐系统主要研究在微信公众号平台上进行外卖点餐的系统,消费者只需关注公众号,即可在公众号上点餐、下单支付,对消费者而言节省了手机的内存还有去实体店排队的时间和精力。对咖啡店家而言节省了入驻平台的成本和一些人力资源的成本。该系统能否成功实现的关键在于Springboot架构的搭建、基于微信平台的开发知识以及数据库的创建,并且还要有良好的用户界面,所以接下来主要研究的内容大致分为
19、:首先要将Springboot架构搭建好,所需的依赖由Maven进行管理;其次是创建完整的数据库,配好数据连接池;研究微信API、和微信开发的相关知识,申请微信测试号,将后台消费者端的业务逻辑与前端顺利连接;最后就是研究并实现后台管理系统的前端与后端连接。1.4. 系统开发环境与开发工具操作系统:win10 x64;JDK:1.8;数据库:MySQL 8.0.13;服务器:nginx, tomcat;代码编辑器:idea;第二章 系统需求分析2.1. 可行性分析2.1.1. 经济可行性基于Springboot的Coffee Room微信点餐系统设计与实现是本人的毕业设计,当遇到自己解决不了的问
20、题时,通过网上的技术帖子指导或者询问了解相关知识的同学,而微信公众号以申请测试号进行开发。目前预计由于基于微信平台开发需要购买域名,所需经费不多,尽量以最少经费开发。2.1.2. 技术可行性本人已修完所有在校课程,并且在课外通过庞大的互联网信息,及时扩展了所需的知识,具备开发微信公众平台买家端和web后台商家管理端的技术。买家端和卖家端的后端业务实现使用的开发工具为idea,采用Java语言,使用Springboot框架;数据库使用MySQL 8.0.13;服务器使用Tomcat 8.3.35。而买家端的前端公众号界面由于本人知识量有限,故采结合网上已有的前端项目,该项目用vue.js构建,并
21、部署到nginx服务器中,将虚拟机与本机连接实现前后端连接。2.1.3. 操作可行性该系统是基于微信公众号平台的,只要买家懂得操作微信,卖家懂得网页的基本操作和了解Coffee Room微信点餐系统,就可以流畅的在Coffee Room微信点餐系统上进行操作。Coffee Room微信点餐系统是一款很容易上手的系统。2.2. 系统总体需求基于微信平台的点餐系统需要微信公众号测试号和商家后台端:微信测试号端可以浏览Coffee Room的商家信息和餐饮餐单,并且在已关注测试号,授权登录的情况下可以进行点餐操作;而商家端在后台订单管理系统登录的情况下,实现对餐饮信息的管理以及用户订单的管理。从而使
22、整个点餐系统正常运转工作,实现双方互利共赢。2.3. 系统业务需求2.3.1. 买家端业务需求流程图买家通过关注公众号,用户微信授权登录进入菜单界面浏览菜单,选择想要的商品,并添加进购物车,在提交订单之前都可以对购物车进行增加或删除。选择好商品后点击提交订单,进入买家填写收货信息的页面,买家的信息不能是空的,提交信息后跳转到订单支付界面(由于没有商家服务号和订单支付接口,只能采取个人收款进行微信支付功能模块)。买家端业务需求图见图2.1:图2.1 Coffee Room点餐系统买家端业务需求图2.3.2. 卖家端业务需求流程图卖家需要登录进入订单管理系统后台,如果未注册,则注册完才能登录。首页
23、是未处理的订单列表,可以根据订单状态查询订单,也可以根据订单号查询订单。在未处理订单列表页,卖家可以修改支付状态,支付后的订单不会显示在该页。在商品信息管理页可以对商品信息进行新增和修改或删除。在完结订单页面显示的是已支付未完结的订单,卖家可以进行订单的完结操作。见图2.2:图2.2 Coffee Room点餐系统卖家端业务需求图2.4. 系统需求分析(功能模块图)Coffee Room微信点餐系统主要分为买家公众号登录端和卖家后台订单管理系统两部分。买家公众号端主要是授权登录、浏览菜单、支付订单、点餐下单;卖家订单管理系统主要是登陆注册、处理未处理订单列表、处理未完结订单列表、修改商品信息。
24、Coffee Room微信点餐系统功能模块图见图2.3:图2.3 Coffee Room点餐系统功能模块图2.4.1. 买家端功能需求分析1) 授权登录:买家使用个人微信账户关注商家的公众号,根据微信平台的规定,买家授权给予商家一定的信息访问权,可以获取买家昵称性别和头像,还有微信openid作为买家的唯一标识。2) 浏览菜单:买家进入菜单页面,可以进行商品的浏览,添加购物车等操作,菜单界面仿饿了么的点单界面,可以浏览商家信息和商品的信息。3) 点餐:买家选购好商品后点击提交订单即可产生新的订单。4) 填写收货信息:买家提交订单后需要添加收货信息(姓名、收货电话、收货地址)5) 支付订单:买家
25、提交完收货信息后会生成预支付订单,即进入支付界面,扫描商家个人收款码并进行支付操作。2.4.2. 卖家端功能需求分析1) 登录注册:卖家首先得注册账户,否则不能登录进入系统。2) 订单管理列表:卖家进入系统首先看到的页面是未处理的订单列表,卖家在该页面可以修改订单的状态和订单的支付状态3) 商家信息管理:卖家可以在此页面修改商家的信息。4) 商品信息管理列表:卖家在此页面可以对商品进行新增、修改、下架操作。5) 类目管理:卖家在此页面可以增加、修改、删除类目2.5. UML系统建模2.5.1. 买家端用例图和用例规约买家用例图,见图2.4:图2.4 Coffee Room点餐系统买家端用例图买
26、家用例规约:表2-1 Coffee Room点餐系统买家端授权登录用例规约用例编号表2-1用例名称授权登录功能描述授权登录包括:买家微信关注公众号,从公众号进入菜单界面时进行授权登录。执行者买家前置条件买家必须关注商家公众号后置条件微信平台记录买家openid和买家授权信息涉众利益用户登录后可以浏览菜单、点餐下单、买单等操作基本路径1、买家先关注商家的微信公众号。2、进入商家公众号,点击菜单栏进入授权登录访问菜单页面3、买家授权后产生一个唯一的用户openid作为标识访问点餐系统,登录后即可在该系统内浏览点餐扩展字段列表业务规则备注表2-2 Coffee Room点餐系统买家端点餐下单用例规约
27、用例编号表2-2用例名称点餐下单功能描述点餐下单包括:买家根据自己喜好选购餐品,添加至购物车,选好后提交订单执行者买家前置条件买家必须关注商家公众号,购物车必须有餐品后置条件下单后订单表和订单详情表将被更新涉众利益用户可以在商家营业期间和配送范围内,方便快捷的下单基本路径1. 买家选购商品1.1. 购物车列表添加或减少商品2. 提交订单2.1. 判断用户购物车是否有商品2.1.1. 有商品跳转至填写收货信息页面2.1.2. 没有商品则返回购物车为空3. 买家填写收货信息3.1. 判断是否信息为空3.2. 根据买家信息和购物车列表创建订单并生成预支付订单3.3. 后端系统弹窗提醒商家有新订单扩展
28、3.2a 商品库存不足,无法创建订单字段列表商品信息、商品id、订单id、买家openid、商品名称、总价、商品数量等.业务规则库存不足则无法添加订单,购物车为空无法添加订单,收货信息为空无法创建订单备注表2-3 Coffee Room点餐系统买家端浏览菜单用例规约用例编号表2-3用例名称浏览菜单功能描述浏览菜单包括:买家登录后可以浏览商家展示出来的菜单,还可以浏览商家基本信息和店铺评价执行者买家前置条件买家必须授权登录后置条件涉众利益买家可以随时随地的浏览餐品,了解商家信息基本路径1. 买家浏览餐品菜单页面1.1. 买家可直接滑动浏览1.2. 买家可直接点击类目跳到相应的类目商品处浏览2.
29、买家浏览商品信息2.1. 直接点击某件商品,跳出商品详情页3. 买家浏览商家评价4. 买家浏览商家信息扩展字段列表业务规则买家必须授权登录才可进入该点餐系统备注表2-4 Coffee Room点餐系统买家端支付订单用例规约用例编号表2-4用例名称支付订单功能描述支付订单包括:买家提交订单后跳转到预支付界面,显示该订单号、商家名称等信息,并附有商家个人收款码,买家通过扫描二维码进行支付执行者买家、商家前置条件订单创建成功后置条件买家支付后会有消息推送提示下单成功涉众利益买家支付后只需等待餐品的送达基本路径1. 买家进入预支付订单页面1.1. 买家通过长按识别二维码,备注相应的订单号支付1.2.
30、若买家退出预支付订单页面,订单自动取消2. 支付成功后返回餐品菜单页面3. 商家收到付款后发送相应的消息推送扩展字段列表业务规则买家在10分钟内必须付款,备注2.5.2. 卖家端用例图和用例规约卖家用例图,见图2.5:图2.5 Coffee Room点餐系统卖家端用例图卖家用例规约:表2-5 Coffee Room点餐系统卖家端登录注册用例规约用例编号表2-5用例名称登录注册功能描述登录注册包括:商家需要进行登录才可以进入系统,若没有注册,则需要注册完再登录执行者商家前置条件商家需要注册账号才能登录后置条件商家信息表更新涉众利益商家可以进行菜单信息更新、订单管理等操作基本路径1. 商家登录1.
31、1. 判断是否注册1.2. 商家登录账号后进入订单管理系统界面2. 商家登出2.1. 清除Cookies2.2. 返回登录界面扩展字段列表商家用户名、商家id、商家密码、商家职称业务规则登录账号才可以进入系统备注表2-6 Coffee Room点餐系统卖家端商品信息管理用例规约用例编号表2-6用例名称商品信息管理功能描述商品信息管理包括:商家新增餐品、修改商品信息、将商品下架等操作。执行者商家前置条件商家需要登录系统才可以操作后置条件商品信息表更新涉众利益商家可以随时新增、修改或下架餐品,买家可以及时知道餐品的动态消息基本路径1. 商家进入商品信息管理界面,页面显示数据库内所有的餐品1.1.
32、商家可以根据商品名字进行模糊查询2. 商家新增餐品信息2.1. 侧边栏“商品”下拉点击“新增”按钮2.2. 填写相应的信息,提交即可2.3. 提示更新结果信息,商品信息表更新,返回商品信息页面3. 商家修改商品信息3.1. 显示商品信息页点击要进行修改操作的商品的修改按钮3.2. 修改相应信息,保存即可3.3. 提示修改结果信息,商品信息表更新,返回商品信息页面4. 商家上/下架商品4.1. 显示商品信息页点击相应商品的上/下架按钮4.2. 商品的状态更改为下/上架4.3. 商品信息表更新,上/下架按钮颜色变化以及上架下架文字互换扩展字段列表商品id、商品名称、商品数量、商品单价等.业务规则备
33、注表2-7 Coffee Room点餐系统卖家端订单管理用例规约用例编号表2-7用例名称订单管理功能描述订单管理包括:商家收到款后修改订单的支付状态和订单状态;餐品送达时修改订单的状态;订单取消时修改订单的状态;商家可以根据订单id进行查询订单操作执行者商家前置条件商家需要登录系统才可以操作,相应订单是存在的后置条件订单表更新涉众利益买家能及时知道自己订单的状态基本路径1. 商家进入订单管理页面,显示所有已存在的订单,点击新订单或完结订单可以查询新订单状态和非新订单状态下的订单1.1. 商家可以根据订单单号查询订单2. 商家处理新订单2.1. 商家收到新订单消息提醒弹窗2.2. 商家进入需要处
34、理的新订单的详情页2.3. 确认金额与订单号后点击买家支付按钮2.4. 订单状态与订单支付状态更新,被处理的订单在非新订单页面显示3. 商家处理订单完结3.1. 商家收到餐品送达的消息,点击操作列的完结按钮或者进入订单的详情页点击完结订单按钮3.2. 订单状态更新,该订单关于完结的操作按钮隐藏4. 商家取消订单4.1. 商家点击操作列的取消按钮或者进入订单的详情页点击取消订单按钮,只有新订单未付款可以取消4.2. 订单状态更新,该订单关于取消操作的按钮隐藏扩展字段列表订单id、订单详情、买家openid等.业务规则备注表2-8 Coffee Room点餐系统卖家端商家信息管理用例规约用例编号表
35、2-8用例名称商家信息管理功能描述商家信息管理包括:商家(管理员职位)登录系统后可以修改Coffee Room餐馆的商家信息、电话、收款码等商家信息执行者商家前置条件商家需要登录系统才可以操作,必须是管理员即店长才可操作后置条件店铺信息更新涉众利益商家更换信息时买家能及时得到消息基本路径1. 商家进入系统,点击商家自己的信息1.1. 判断不是管理员,信息只读1.2. 判断是管理员,信息可以被修改,商家信息表更新扩展字段列表业务规则备注表2-9 Coffee Room点餐系统卖家端类目管理用例规约用例编号表2-9用例名称类目管理功能描述类目管理包括:商家新增、修改、删除类目信息执行者商家前置条件
36、商家需要登录系统才可以操作后置条件类目表更新涉众利益商家可以随时新增、修改、删除类目基本路径1. 商家进入类目管理界面,页面显示所有类目信息2. 商家新增类目2.1. 侧边栏类目下拉点击新增按钮2.2. 填写相应的信息,提交即可2.3. 提示新增成功,类目信息更新,返回类目管理页面3. 商家修改类目信息3.1. 显示类目页点击要进行修改操作的类目的修改按钮3.2. 修改相应信息,保存即可3.3. 提示修改成功,类目表更新,返回类目管理页面4. 商家删除类目4.1. 进入类目修改页4.2. 该类目下如果有商品信息,则删除按钮隐藏;该类目下如果无商品信息,则删除按钮显示4.3. 类目被删除,类目表
37、更新,返回类目管理页面扩展字段列表类目id、类目名称、类目类别号等.业务规则备注2.6. 本章小结本章首先对Coffee Room点餐系统各方面的可行性进行了分析。其次总体分析出Coffee Room点餐系统分成了买家微信端和商家后台管理端;接着分别展示了买家端和商家端的业务流程图,并简单分析了两端的业务需求。然后用系统的功能模块图简单的展示了买家端和商家端的功能需求。最后,Coffee Room点餐系统展示了买家端和商家端各自的用例图,并做了简单的用例规约表格。第三章 系统设计3.1. 功能设计3.1.1. 买家端功能(1) 授权登录:买家首先得关注商家公众号,关注公众号后微信平台会生成一个
38、买家用户唯一标识,即openid,用户通过这个openid访问点餐系统并授权登录系统才可以进行操作。(2) 浏览菜单:买家进入点餐系统后显示的就是Coffee Room的菜单页面,改也买仿“饿了么”系统的点餐界面,买家可以上下滑动浏览菜单,也可以通过左边的商品类目进行跳转浏览菜单;点击加号添加相应商品进购物车,减号则移除购物车内已选的相应商品;点击上方商家信息区可以看到商家的简介、优惠活动等;点击商家,可以看到商家的地址和联系方式;点击评价可以看到其他买家对商家的评价。(3) 点餐:买家选购好餐品可以点开底边的购物车进行查看,确认无误后点击提交订单,跳转至收货信息页面。(4) 填写收货信息:买
39、家点击提交订单后跳转到填写收货信息的界面,填写收货联系人(不能为空)、收货电话(按正确的电话号码格式输入,不能为空)、收货地址(不能为空),填写完成后点击完成,后端数据库订单新增,前端跳转到预支付订单。(5) 支付订单:买家进入预支付订单页面,该页面显示收款者Coffee Room咖啡屋、付款者买家(微信昵称)、订单总金额、订单号、商家个人收款码,买家长按支付并将订单号填入备注即可完成订单支付;若买家退出支付界面,自动视为取消订单。3.1.2. 卖家端功能(1) 登录注册:卖家打开订单管理系统的登录界面,必须要登录才可进入系统管理订单和菜单;卖家端分为管理员(店长)和普通店员,店员不可以修改商
40、家的信息,只可以管理订单和菜单信息,管理员可以更改商家信息,电话、地址、收款码等信息。(2) 订单管理列表:卖家用户进入订单管理页面,显示的是新订单列表,在订单管理页面可以按订单号或者买家名称模糊查询订单;当收到买家付款后,卖家用户在订单详情页点击买家支付按钮,可以将状态改为已支付状态并且按钮隐藏,该订单会显示在非新订单页面;点击完结订单按钮,进入非新订单页面,显示的是除了新订单状态以外的订单列表,当买家收到货物后,卖家用户点击未送达按钮可以将状态改为已送达状态并且按钮隐藏。(3) 商家信息管理:卖家管理员职位的用户可以在商家信息管理页面修改商家的信息;普通的商家用户在此页面只读,不可进行修改
41、更新操作。(4) 商品信息管理列表:商品信息管理页面显示所有菜品的信息,商家用户点击新增按钮,填写相关商品信息:商品名称(不能为空)、商品单价(不能为空)、商品描述、商品图片等,点击提交即可新增商品信息;商家用户点击相应商品的修改按钮,修改相关的信息,点击保存即可修改商品信息;商家用户点击相应商品的上/下架按钮即可将商品上/下架。(5) 类目管理:类目管理页面,显示所有类目信息;点击类目的修改按钮可以进入类目修改页面,修改后点击保存即可更改类目信息;点击新增按钮并填写相应信息即可增加类目;点击删除即可删除类目(前提必须类目下已无商品信息)。3.2. 类图设计系统类图设计见图3.1:图3.1 C
42、offee Room点餐系统类图设计图3.3. 顺序图设计3.3.1. 买家用户系统顺序图1 买家授权登录(1) 买家通过微信客户端访问点餐系统(2) 系统返回授权页面展示给买家(3) 买家若不同意授权登录,则直接退出;若买家授权登录页面,则微信客户向微信服务器发送获取code请求。(4) 微信服务器返回携带code的跳转请求(5) 客户端携带从服务端获取的code和state跳转到系统配置好的重定向地址(获取买家openid和access_token的方法)。(6) 系统通过获取的code值向微信服务器发送获取买家openid等信息的请求(7) 微信服务器返回买家openid和access_
43、token给系统(8) 系统携带用户openid登录跳转至点餐页面展示给微信客户端图3.2 Coffee Room点餐系统买家授权登录时序图2 买家点餐下单(1) 买家进入点餐系统,浏览菜单(2) 买家选购商品添加进购物车(3) 页面会显示当前购物车总金额(4) 买家确认后点击提交订单(5) 跳转至填写收货信息页面(6) 买家提交收货信息(7) 后端系统通过购物车返回的商品id查找商品信息表该商品的单价,通过单价与购物车返回的数量计算该订单的总金额(8) 根据商品id查找到的商品信息和前端返回的商品数量,以及买家用户填写的收货信息创建新订单(9) 将预支付页面所需要的信息返回给前端页面(10)
44、 买家跳转至预支付订单的页面图3.3 Coffee Room点餐系统买家点餐下单时序图3 买家支付订单(1) 买家跳转至预支付订单界面(2) 若买家退出该支付界面(3) 前端向后台系统发起取消订单请求(4) 后台根据订单id进行订单的取消操作(5) 若买家支付订单,则长按识别预支付订单中的个人收款码进行支付(6) 卖家接到收款通知(7) 登录后台订单管理系统修改订单状态信息(8) 买家支付操作后,页面退出并返回给买家订单的支付结果图3.4 Coffee Room点餐系统买家支付订单时序图3.3.2. 卖家用户系统顺序图1 卖家注册登录时序图(1) 卖家进入系统登录界面 卖家输入账号密码进行登录
45、 系统根据账号密码查询卖家用户数据库 查询结果返回 若账号不存在,则提示用户是否输入错误或者未注册账号 若账号存在,则提示用户登录成功,并进入系统页面(2) 卖家进入注册界面,填写注册的相关信息 页面将表单数据传输给后端系统验证 后端系统根据用户填写注册的手机号验证是否存在账号,若存在则注册失败,若不存在则注册成功 返回注册结果给前端 前端将结果显示给用户,手机号已被注册则提示账号已存在 若手机号未被注册,则提示注册成功,并转至登录页面图3.5 Coffee Room点餐系统卖家端登录注册时序图2 订单管理时序图(1) 用户进入订单管理页面,该页面有三个模块。第一个是所有订单的模块,即查询所有订单的需求;第二个是新订单的模块,即查询所有新建订单的需求;第三个是非新订单的模块,即查询所有非新订单的需求。(2) 用户在订单管理页面的输入框进行模糊查询,即根据订单id或买家名称进行模糊查询的需求(3) 用户点击某条订单的详情按钮,即根据该订单的id进行查询详情的需求(4) 前端页面根据用户不同的查询需求向后端发起不同的查询请求(5) 后端根据前端发送的请求进行相应的查询操作(6) 查询后的结果渲染给前端(7) 前端将结果展示给用户,实现订单查询的功能(8) 用户点击“买家支付”、完结操作相关和取消操作相关的按钮,即用户对订单的状态和订单的支付状态进行修改的需