陈超微信智能点餐餐饮管理系统设计与实现_第1页
陈超微信智能点餐餐饮管理系统设计与实现_第2页
陈超微信智能点餐餐饮管理系统设计与实现_第3页
陈超微信智能点餐餐饮管理系统设计与实现_第4页
陈超微信智能点餐餐饮管理系统设计与实现_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微信智能点餐餐饮管理系统的设计与实现学 院:专 业:姓 名:指导老师:电脑学院软件工程陈超学 号:职 称:100202151036魏志军讲师中国·珠海二一四年五月实用文档北京理工大学珠海学院2021届本科生毕业设计诚信承诺书本人郑重承诺:本人承诺呈交的毕业设计?微信智能点餐餐饮管理系统的设计与实现?是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。本人签名: 日期: 年 月 日微信智能点餐餐饮管理系统的设计与实现摘 要随着餐饮行业的迅猛开展,近年来其经营管理模式也在不断开展和创新,信息化的管理技术能为餐饮企业

2、带来真正业务上的提升,快速解决营运上的诸多难题。微信,是当今最火的移动社交软件,微信5.0以后,重磅推出微信官方公众号,基于其6亿多的用户量,假假设能将微信与餐饮点餐结合起来,无疑是一个集营销以及信息化管理的餐饮行业的革命性的入口,更是一个O2O模式的入口。微信点餐的魅力和商机不言而喻,将是一个巨大的行业市场。 因此,此次的微信点餐餐饮系统的设计与实现正是在此背景下诞生的。用微信点餐,不仅提高了餐厅的档次,表达了差异性,也通过微信这个6亿多用户的社交软件,打造了自己餐厅的亮点,无疑是一个很好的营销广告手段。并且平时通过微信公众平台,可以将一些优惠信息推广给用户,更是一个很好的广告平台,大大提高

3、了用户粘度。使用微信点餐代替菜谱,这就省去了定期更换纸质菜谱的费用和时间。微信点餐,顾客只需在餐厅扫一扫该餐厅的微信公众账号2微码,关注该餐厅的微信公众账号。选择点餐,便可看到各式菜肴照片、口感介绍和营养成分介绍。只要轻轻一点,所有订单主动上传到厨房,无需效劳员在旁边等候,效率大大的提高。点完菜后,系统会自动显示菜品清单和待支付金额,让消费者尽情享受卓越的用户体验。并且餐厅管理员通过后台可以即时看到用户下单信息以及支付信息。本课题是设计与实现一个微信点餐系统,提高餐饮行业的信息化管理,节省人力、控制本钱、提升工作效率的特点。为广阔餐饮行业提供了高效的餐饮信息化效劳,营销效劳。该系统功能模块包括

4、:1系统后台管理模块;2微信端点单模块;3移动端营销推广模块;4移动端会员卡模块;5营业统计模块;关键词:微信点餐 微信公众平台 PHP ThinkPHP MVCThe Design And Implement of Wechat Ordering Food And Catering Management SystemAbstractIn recent years with the rapid development of catering industry, its management pattern is also continually developing. The informat

5、ion management in technology can bring real business promotion for the catering industry and quickly solve many problems.Wechat is the most popular mobile social software today. After its 5.0 version, the public platform was released. Based on more than 600 million users using wechat, if we can comb

6、ine wechat and the catering for ordering food, it was a new island for the catering industry ,event can be a entrance of the Online to Offline mode. It goes without saying that the market would be a huge by using wechat to order food. Therefore, the wechat ordering catering system design and impleme

7、ntation was born in this background.By using wechat to order food, not only improve the level of the restaurant, but also make the different through this 6 million users social network software. It is a good way of marketing and advertising to make your restaurant different. Even can send some sales

8、 message to the users by wechat, it was a good platform for advertising and it can improve the user stickiness. By using wechat for ordering foods , it can save the cost for changes menu which in paper instead of using electronic menu. When user using wechat for order food , they only need to scan t

9、he two-dimensional code of the restaurants wechat public platform, become the fans and can start ordering foods. When user using wechat ordering foods, he can see all the foods picture and introduction in his phone. It is very convenience that only need move your finger then the order will auto send

10、 to the kitchen, no need the waiter waiting for customer finished his ordering. By using wechat for ordering foods, it will improve the efficiency for the process of ordering foods. After ordering foods, the wechat will display the list of the foods and money which users ordered. And it was a fantas

11、tic user experience. The restaurant manager can see the order and payment message of usersThis project of design and implement a wechat ordering system is for improve the informatization of the catering industry, save the human resources and control the cost. This system contains 5 modules in below:

12、1) Admin manage module; 2) Wechat ordering module;3) Marketing and adverting module;4) Member system;5) Business statistics module;Keywords: Wechat ordering; Wechat public platform; PHP ;ThinkPHP;MVC目 录1 前言 11.1本设计的目的以及研究意义11.2餐饮点餐的研究现状21.3微信点餐的未来开展趋势22需求分析 42.1需求综述42.1.1用户需求42.1.2 功能需求52.2 详细需求分析52

13、.2.1 系统参与者52.2.2系统用例62.2.3具体用例分析92.3领域类图133概要设计143.1 技术选型143.2 功能模块划分143.2.1 用户功能模块143.2.2 系统管理员功能模块163.2.2 微信用户功能模块163.3 系统架构173.4 包图183.5 类图203.6 数据库设计与实现213.6.1 数据库E-R图213.6.2 数据库设计233.6.3 数据逻辑结构设计243.7 部署图284详细设计294.1 微信公众号接口设计与实现294.2 系统各功能详细设计314.2.1用户注册与登录设计与实现314.2.2添加微信号功能设计与实现334.2.3 微信订餐功

14、能设计与实现375 安装测试415.1 运行环境简介415.2 测试方案415.3 测试过程与结果425.3.1 注册功能测试425.3.2 登录功能测试435.3.3 查看菜品分类功能测试445.3.4 点餐下单功能测试465.4 总结485.4.1系统存在的缺乏485.4.2改良方案48参考文献49谢 辞50附 录51附录一:与微信效劳器校验接口配置程序51附录二:处理微信用户在微信客户端输入“订餐关键字代码:52附录三:微信点餐微信端点单动态数量变化ajax js代码:531 前言随着餐饮行业的迅猛开展,近年来其经营管理模式也在不断开展和创新,信息化的管理技术能为餐饮企业带来真正业务上的

15、提升,快速解决营运上的诸多难题。微信,是当今最火的移动社交软件,微信5.0以后,重磅推出微信官方公众号,基于其6亿多的用户量,假假设能将微信与餐饮点餐结合起来,无疑是一个集营销以及信息化管理的餐饮行业的革命性的入口,更是一个O2O模式的入口。微信点餐的魅力和商机不言而喻,将是一个巨大的行业市场。 因此,此次的微信点餐餐饮系统的设计与实现正是在此背景下诞生的。1.1本设计的目的以及研究意义本课题是设计与实现一个微信点餐系统,用微信点餐,不仅提高了餐厅的档次,表达了差异性,也通过微信这个6亿多用户的社交软件,打造了自己餐厅的亮点,无疑是一个很好的营销广告手段。并且平时通过微信公众平台,可以将一些优

16、惠信息推广给用户,更是一个很好的广告平台,大大提高了用户粘度。使用微信点餐代替菜谱,这就省去了定期更换纸质菜谱的费用和时间。微信点餐,顾客只需在餐厅扫一扫该餐厅的微信公众账号2微码,关注该餐厅的微信公众账号。选择点餐,便可看到各式菜肴照片、口感介绍和营养成分介绍。只要轻轻一点,所有订单主动上传到厨房,无需效劳员在旁边等候,效率大大的提高。点完菜后,系统会自动显示菜品清单和待支付金额,让消费者尽情享受卓越的用户体验。并且餐厅管理员通过后台可以即时看到用户下单信息以及支付信息。为广阔餐饮行业提供了高效的餐饮信息化效劳,营销效劳。该系统功能模块包括:1系统后台管理模块;2微信端点单模块;3移动端营销

17、推广模块;4移动端会员卡模块;1.2餐饮点餐的研究现状餐饮行业是一个传统的行业,占据了人们衣食住行中的其中一项。且自古以来就一直存在,所以这个一个生命周期,生命力极强的行业。而今年来随着互联网,IT技术的开展,餐饮行业也融入了越来越多的科技元素。从餐饮管理系统,PC端的点餐系统,到后来的平板点餐等。点餐系统不断地再开展,为的都是一个目的,让商家节省人力本钱,让顾客有更好的点餐体验。减少人员缺乏,排队等候的麻烦,以及一旦菜单更改,还需要全部更换餐厅的菜单。这无疑是一个比拟大的本钱,而采用电子点餐系统,电子菜谱,那么可以防止这个问题,而且不管是图片还是接受,都可以更加详细,美观,而且环保,防止了纸

18、张菜单的浪费。并且传统点餐系统还有一个需要人工进行记账,营业统计等缺点。而采用电子点餐系统那么可以很方便地查看信息,自动进行统计。餐饮电子点餐的开展的也是有一定历史了,这个行业可以革新的地方已经较少了,趋于稳定化。以前的点餐系统是针对商家的使用方便进行设计的,而以后的点餐可能将结合顾客的喜欢,且更多地结合营销手段。让客人在点餐时更有乐趣,只有这样,才能表达出餐厅的差异性,提高收入。1.3微信点餐的未来开展趋势基于微信以及微信公众平台的开展趋势,以及餐饮行业的特点,可以总结出利用微信点餐有以下几点特点:1、微信具有普遍性微信用户已达 4 亿,它的普及和使用率之高,并继续呈几何极数的增长,据预测,

19、2021年微信用户将到达 8 亿。2、微信具有通用性大型商家有能力可以开发自己的APP 软件,但APP需要用户去下载安装,即消耗时间和流量,又占用 的存储空间。微信自身拥有多平台版本安卓、IOS、WinPhone、黑莓以及web版,你的网站只要能在微信上跑起来,就无需担忧是否能兼容用户 的问题。任何层次和级别的 只要能装上微信就能使用你的点单系统。只需轻扫一下二维码,4亿用户的微信将成为你的免费推广平台,让用户帮你口碑营销。来客数、活泼数,一切都来得那么自然。3、节约人力资源主要针对餐厅效劳人员费用使用微信自助效劳点餐,订单全部自动生成打印,无需人工值守效劳。4、节约推广费用微信外卖营销系统,

20、一次推广即可,消费者只需要扫一扫,商家全部信息,都保存在消费者微信内,商家每天可免费推送订餐提示或促销信息。5、增加盈利能力主要表达在提升经营能力与费用节约通过对自助效劳的推广,做到全程标准化运作,既缩减了费用,又留住固有消费者,不断的刺激消费者,扩大需求,增加盈利能力。6、二维码订阅微信扫一扫二维码,或手动添加:朋友们-添加朋友-输入账号,完成订阅,让微信用户随手订阅。7、消息推送通过用户分组和地域控制,实现精准的消息推送,直指目标用户。8、品牌传播借助个人关注页和朋友圈,传播推广,实现品牌的传播。我们可以推断出,利用微信点餐未来可能是餐饮行业的一个不错的开展趋势,只要微信这个应用存在,以及

21、它生态不断地扩大。将来不单单只是下单点餐,结合其本身更大的营销推广特点以及O2O的模式,将能给商家带来更多的利润。2需求分析2.1需求综述本微信点餐系统是一个基于时下最热的IM软件微信为平台的点餐系统,利用微信庞大的用户群体作为系统入口。结合当下移动互联网热潮以及O2O模式,利用该微信点餐系统,能够更好地提高餐饮效劳的标准以及信息化程度,为客户带来更好的点餐体验,结合微信本身的营销推广特征,更好得为餐厅推广以及节约本钱提高盈收。本系统的设计与实现与时下流行的社交软件微信进行交互的点餐系统,提高餐饮行业的信息化管理,节省人力、控制本钱、提升工作效率的特点。为餐饮行业商家提供了高效的餐饮信息化效劳

22、,营销效劳。2.1.1用户需求该系统的用户主要有2类,一类用户是餐厅商家,一类用户是去到餐厅使用微信点餐的用户。针对餐厅商家这类用户类说,使用微信点餐,他们能够减少职工的数量,只需少局部引导人员将顾客引导到座位上。座位上需要帖个2微码,让用户扫描关注商家微信号,就可以使用微信进行点餐。顾客将直接在 上面进行菜单浏览以及下单,成功下单后效劳员过来确认下单。这无疑给一些生意很火爆,但人手缺乏的餐厅带来很大的方便。而且使用传统的菜单,一旦某个菜的价格改变或在菜单改变,都需要重新印制大量的菜单,使用微信点餐,只需要在后台进行修改就可以更换菜单。而且当顾客关注了商家的微信公众号后,以后商家可以再公众号与

23、顾客进行互动,相当于免费的短信平台,一旦出了新品或者优惠活动,可以迅速推送给顾客。对于来到餐厅消费的用户来说,他们希望能够有一种体验好,不用排队等候,并且新颖的点餐方式。他们只需要去到餐厅座位,不需要等候效劳员过来点餐,而只需要掏出 扫一扫二维码,关注后进入点餐页面就可以方便地点餐。而且这种新颖的方式也会吸引到他们。下单后,效劳员在后台看到订单打印出来后拿给顾客确认,即完成了点餐流程。后来还可以参加在线支付功能,用户甚至不需要带钱包,只要绑定了微信支付或者支付宝,直接下单即可完成支付。但顾客想预订位置,且想事先点好菜,以往只能是去到餐厅才能点餐,而是用微信点餐,顾客可以随后随地得用微信点餐下单

24、预订位置。收到顾客预订后,效劳员通过顾客留下的联系方式进行确认。以及事先准备好顾客的订单提前在线支付。2.1.2 功能需求该系统功能模块包括:1)微信公众号根本回复模块:该模块可以设置用户微信公众号文本回复,图文回复,关注回复,语音回复等; 2)微信公众号微网站模块:该模块用于展示商家微信号官方微站给微信用户,可设置微站内容分类,微站首页滑动幻灯片,微站模板等;3)微信点餐模块:该模块用于关注商家微信公众账号的用户在商家微信号上进行点餐操作,是该系统的核心功能。4)营销推广模块:该模块主要有刮刮卡、转盘、优惠劵等抽奖模块。这些模块通过让微信用户在关注商家微信号后,在微信端参与商家的活动,从而提

25、高用户粘度以及体验性;5会员卡模块:该模块主要用于让商家的客户领取微信会员卡,以及商家微信会员的消费积分设置,以及会员权限,优惠折扣等。6营业统计模块:该模块主要用于统计微信订餐营业的数据,以及微信用户在微信会员卡积分消费的情况。2.2 详细需求分析2.2.1 系统参与者a) 用户餐厅商家餐厅商家,商家通过注册登录使用该微信点餐管理系统,可以实现添加微信公众号并绑定连通好该订餐系统,设置微信公众号消息回复功能,微信订餐功能以及开通营销推广模块抽奖游戏、微信会员卡功能。b微信用户 关注该商家微信公众号的用户,可以实现查看该商家公众号官网、了解最新信息、订餐、订位、参加活动抽奖以及领取会员卡、签到

26、领取积分功能c) 订餐系统管理员 该系统是一个多用户的微信点餐管理系统。系统管理员具有审核用户注册,管理每一个用户商家是否具有开通微站、订餐、会员卡、抽奖模块的权限。2.2.2系统用例图2.2.1.1 用户商家用例图2.2.1.2系统管理员用例图2.2.1.3 微信用户用例2.2.3具体用例分析UC01:注册与登录 用户商家要想使用该微信点餐系统必须先拥有自己的微信公众号,然后在该微信点餐系统上面进行账号注册,后台管理员会根据注册信息判断是否同意注册。只有后台管理员通过其注册后,商家才能使用其注册的账号进行登录 a)用户注册功能用例 用例描述:用户(商家)在本系统注册帐号。 参与者:用户(商家

27、)。 根本流程:(1)用户在登录界面选择注册。 (2)系统返回一个注册页面。 (3)用户根据提示输入相关注册信息。 (4)用户提交注册信息。 (5)系统返回注册成功贞面并跳转到登录首页。 变化流程:(1)用户输入信息和系统确认不一致,如字段过长,密码重复不一致,邮箱格式错误,系统给出相应提示返回注册。 (2)用户输入帐号是已经注册帐号,系统给出提示“该用户名已 经存在。 b)用户登录功能用例 用例描述:用户商家选择本系统登录,系统进行相关的系统验证。 参与者:用户(已注册商家)。 前置条件:用户必须是本系统的成功注册用户。 根本流程:(1)会员选择登录。 (2)用户输入用户名和密码并提交。 (

28、3)系统进行系统验证,验证成功记录该用户为登录用户并返 回主页面(显示已登录)。UC02:添加微信号用户商家在登录该系统后,需要将其在腾讯微信公众平台申请的微信公众账号与微信订餐系统进行打通。其方法就是在登录后,选择添加微信公众账号,填写商家其已经申请好的微信公众账号信息。填写完毕生成后,该微信订餐系统会自动生成一个接口信息url跟token,用户只需要将该接口信息填写至微信公众平台的高级设置-开发者模式的url跟token表单中,提交即让该公众账号与微信订餐平台连通。 a)系统添加微信号功能用例 用例描述:用户商家通过在系统添加微信号从而使其微信号与该系统连通 参与者:用户商家、微信公众账号

29、效劳器 根本流程:(1)用户选择添加微信公众号,输入公众号根本信息。 (2)订餐系统自动生成接口信息返回给用户token、url (3)用户将订餐系统生成的接口信息填写到微信公众账号平台的-高级功能-开发者模式的接口信息那里。即可实现订餐系统与微信公众号的连通。 变化流程:(1)假设微信订餐系统的效劳器没反响或者token、url出错,那么在微信公众账号填写订餐系统的接口信息后会提示效劳器无响应或连接失败。UC03:设置微信官网微信官网是一个公众号必备的功能模块之一,是一个展示商家形象与实力的功能。用户商家通过添加公众号后,连通微信公众平台与微信订餐系统,使用微网站设置功能,即可打造一个属于自

30、己的微网站。 a)设置微官网功能用例 用例描述:用户通过微信订餐系统设置其公众号官网 参与者:用户商家 根本流程:(1)用户选择“首页回复设置功能,设置微网站回复关键字等信息。 (2)微信订餐系统根据用户输入的关键字以及相关信息,与微信公众账号效劳器连通,为该商家的微信号添加一个关键字,回复给关注该公众号的微信使用者一个图文信息 (3)关注该商家微信号的微信用户在其公众平台输入关键字,返回一条图文信息,内容为在订餐系统设置的内容。(4)微信使用者点击该图文信息,即通过该图文的连接跳转到位于微信订餐系统效劳器上该商家的微信官网页面。 变化流程:(1)输入关键字如果在数据库没找到该关键字对应的官网

31、信息,那么不通过微信返回给关注该商家公众号的使用者图文信息。UC04:设置使用微信订餐微信订餐功能是该微信订餐系统的核心功能。用户商家通过设置微信订餐回复关键字,以及商家餐厅信息。并且设置菜品分类,菜品信息名称、图片,餐桌信息等。微信用户只要关注该商家的微信公众账号,即可通过输入订餐关键字,通过微信公众号返回的订餐图文入口进去点餐页面。 a)微信订餐功能用例 用例描述:客户微信用户通过商家微信公众平台进行订餐 参与者:客户微信用户,用户商家微信 前置条件:用户商家必须是在微信订餐系统通过注册且开通设置好微信订餐功能的 根本流程:(1)用户餐厅商家通过登录微信订餐系统,开通设置微信订餐功能 (2

32、)添加设置菜品分类,桌台信息,菜品信息等 (3)客户通过在该商家公众号上输入关键字进入微信订餐界面 (4)客户通过在订餐界面进行菜品选择添加到购物车UC05:购物车与订单管理客户微信用户通过订餐页面订餐后,选择其需要的菜品,然后添加进入购物车。在购物车里面,用户可以看其所点的菜以及总数量总金额,还可以对其订单进行修改。选择每个订单项的“+,“-按钮对订单数量修改,其在购物车里的总金额以及数量会跟着改变。购物车的数据并没保存到数据库,而是采用cookie的方式保存到用户的微信浏览器中。客户确认购物车菜品无误后,即选择其订单的模式,是在餐厅就餐或是外卖,或是预订,并且填写用户的个人信息,如名字,联

33、系方式等。假设下了订单后,客户不满意,可对订单进行删除修改等操作 a)购物车功能用例 用例描述:对选择的菜品添加进购物车 参与者:客户关注该商家微信号的微信用户 前置条件:该商家的微信号必须通过微信订餐系统设置好微信订餐功能。 根本流程:(1)用户进入微信点餐页面点餐并添参加购物车 (2)对购物车里的商品进行修改、删除,筛选后确认下单。 b)订单功能用例 用例描述:对在购物车确认好的菜品信息进行下单,对订单修改以及选择填写客户相关信息等。 参与者:用户微信用户 前置条件:用户的购物车必须存在至少一件的菜品以及开通订餐功能 根本流程:(1)用户在购物车确认菜品信息后选择下单 (2)确认下单后显示

34、此单数量,金额以及就餐方式,用户联系方式等。 (3)用户可对订单做出修改删除等操作 UC06:推广活动功能当用户商家需要通过一些活动来吸引用户的关注或者配合其餐厅的营销推广时,可在该微信订餐系统上面开通推广活动,如大转盘、优惠券、刮刮卡。通过设置推广活动的关键词以及类型、名称、奖项等信息。客户微信用户关注商家的公众号后,输入关键字即可参与到该餐厅的推广活动,比方刮刮卡抽奖,大转盘抽奖,领取该餐厅的优惠券等。这无疑是一个非常好的营销推广方法,又吸引了人来关注餐厅的微信号,也可以跟用户进行互动,提高用户粘度。用户通过在朋友圈转发该优惠推广活动,无疑是一个免费的广告,大大能够扩大该商家的知名度以及广

35、告效果。 a)大转盘功能用例 用例描述:使用大转盘抽取奖品 参与者:客户微信使用者 前置条件:客户必须关注该商家的微信公众号,商家必须在系统开通大转盘功能。 根本流程:(1)客户在该商家的微信公众账号里输入该活动关键字。 (2)微信效劳器将关键字返回到订餐系统,系统根据关键字返回特定 内容的图文入口,这里那么返回一个大转盘抽奖活动的web mobile页面 地址。 (3)客户点击该图文进入大转盘抽奖界面,点击开始抽奖。 (4)系统按照一定中奖概率返回结果,假设中奖那么添加个人资料,方便到 商家处领奖。 b)刮刮卡功能用例 用例描述:使用刮刮卡刮奖 参与者:客户微信使用者 前置条件:客户要关注该

36、商家的公众号,商家必须设置好刮刮卡功能。 根本流程:(1)客户在该商家的微信公众账号里输入该活动关键字。 (2)微信效劳器将关键字返回到订餐系统,系统根据关键字返回刮刮卡 的图文入口,这里那么返回一个刮刮卡活动的页面地址。 (3)客户点击该图文进入刮刮卡抽奖界面,刮屏抽奖。 (4)系统按照一定中奖概率返回结果,假设中奖那么添加个人资料,方便到 商家处领奖。 c)优惠券功能用例 用例描述:领取优惠券 参与者:客户微信使用者 前置条件:客户必须是商家微信号的关注者,商家必须开通优惠券功能。 根本流程:(1)客户在该商家的微信公众账号里输入优惠券关键字。 (2)系统返回一个优惠券图文入口。 (3)客

37、户点击该图文进入领取优惠券页面 (4)优惠券数量有限,按照先领先得的顺序,且每个优惠券有一个唯一 的标识码,通过这个标识码商家可以与后台发放出去的优惠券进行匹 配使用优惠券。2.3领域类图图2.3.1 领域类图领域类说明(1)用户商家:使用该点餐系统的直接用户,可以通过该微信点餐系统开发自己的微信公众账号,通过设置使其具备官网,订餐,会员卡等功能。(2)微信用户:关注商家微信号的,通过关键字与商家微信号进行互动,从而获得 商家微信号再微信订餐系统匹配关键字后返回的图文信息,微信用户可以点击图文进入具体功能页面。(3)系统管理员:本系统的管理员,拥有最高权限。可以审核用户的注册申请以及管理用户功

38、能权限。(4)微信效劳器:负责微信点餐系统与微信用户通过微信客户端间的交互(5)微信点餐系统:通过用户设置好的功能模块的生成mobile web网站,从微信效劳器获取用户输入的关键字并返回具体消息。记录微信用户点餐的订单以及其他信息。3概要设计3.1 技术选型主要使用开源框架ThinkPHP + apache +mysql来实现本系统。ThinkPHP是一个快速、简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原那么,在保持出色的性能和至简的代码的同时,尤其注重开发体验和易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供

39、了强有力的支持。ThinkPHP基于MVCModel-View-Controller,模型-视图-控制器模式,并且均支持多层multi-Layer设计。在MVC三层中,ThinkPHP并不依赖M或者V,甚至可以只有C或者只有V,这个在ThinkPHP的设计里面是一个很重要的用户体验设计,用户只需要定义视图,在没有C的情况下也能自动识别。3.2 功能模块划分系统按照三种角色划分三种功能模块结构,包括:用户功能模块、系统管理员模块、微信用户模块,如下为各个模块的功能简介:3.2.1 用户功能模块图3.2.1 用户功能模块结构图描述:(1) 注册:用户注册(2) 登录:用户登录(3) 根本回复管理:

40、用户与微信公众号回复交互管理A. 关注时回复:微信用户关注商家微信公众号的回复设置B. 文本回复:微信用户输入关键字商家公众号匹配回复的文本C. 图文回复:微信用户输入关键字商家公众号匹配回复的图文a) 添加图文b) 删除图文c) 修改图文(4) 设置微站:用户打造其微信官网(5) 微信订餐设置:A. 微信订餐回复设置:用于设置微信用户使用订餐关键字以及回复内容B. 餐桌管理:设置该餐厅用于微信订餐或者预订的餐桌C. 菜品分类管理:用户设置该餐厅用于微信订餐的菜品分类D. 菜品管理:a) 添加菜品b) 删除菜品c) 修改菜品E. 订单管理a) 查看订单b) 操作订单c) 删除订单(6) 营销推

41、广活动设置:A. 刮刮卡设置B. 大转盘设置C. 优惠券设置(7) 微信会员卡设置:A. 设置微信会员卡卡面B. 发放微信会员卡数量C. 查看微信领卡会员资料3.2.2 系统管理员功能模块图3.2.2 系统管理员功能模块结构图描述:(1) 登录:管理员登录(2) 用户管理:管理用户A. 添加用户:添加用户B. 修改用户信息:审核注册用户,修改用户权限,资料。C. 删除用户:删除用户(3) 设置微信公众号管理:管理用户添加的微信公众号D. 修改微信公众号:修改该微信公众号能使用的功能E. 删除微信公众号:删除用户添加的微信公众号3.2.2 微信用户功能模块图3.2.2 微信用户功能模块结构图描述

42、:(1) 关注公众号:微信用户关注商家微信公众号(2) 查看公众号微站:微信用户浏览使用微信订餐系统建设的微信微站(3) 使用微信点餐:使用微信点餐功能A. 微信订位:通过商家微信公众号进行餐桌预订 B. 微信订餐:进入微信点餐界面,浏览菜品分类,添加进购物车,下单C. 查看订单:微信用户查看自己已下的单可以修改订单,删除订单 3.3 系统架构图3.3 系统架构图描述:微信点餐系统客户端用户通过 请求微信点餐系统效劳器,进行订餐功能以及其他功能的设置;微信点餐系统效劳器采用ThinkPHP的Action来处理来自微信点餐系统客户端跟微信效劳器的请求,再通过调用model与数据库进行交互。3.4

43、 包图图3.4 包图包图描述:包名描述包括下层wxording工程iMicro,iMicrodata,themesimicro整个工程后台代码Lib,_Core包名描述包括下层Lib工程后台核心代码Action,ORG,ModelAction工程后台ActionAdmin,Home,User,WapAdmin后台管理员的ActionHome后台首页未登录Action,以及微信端接口配置,请求响应处理ActionUser后台用户操作ActionWap微信端用户操作ActionORG第三方库ModelModel层_CoreThinkPHP底层框架themes整个工程前台包Admin,User,Ho

44、me,Wap,Static包名描述包括下层admin管理端前台代码Home用户端未登录前台代码User用户端前台代码Wap移动端用户前台代码Static静态前台代码,可共用无iMicrodata工程配置以及图片上传文件attachments,logs,conf包名描述包括下层attachments用户文件上传文件夹logs系统日志文件夹conf系统配置文件夹3.5 类图本系统是根据主要用户类型进行分物理包层次的,主要划分为:(1) 系统管理员代码物理层;(2) 未登陆用户代码物理层;(3) 用户商家代码物理层;(4) 微信用户代码物理层。每个物理层再细分为:(1) Action层:前台与后台交

45、互层;(2) Model层:数据库低层操作层;由于每层结构都是一样,在此我们以微信用户点餐模块的类图来分析,如下所示:图3.5 微信用户点餐模块类图类图描述:类名包/实现或继承描述属性/描述方法/描述Model ThinkPHP根底Model 类封装了一系列与数据库交互的属性封装了一系列与数据库交互的方法ProductModelModel类与菜品数据对象Model_validate:自动校验对象;_auto:自动保存属性gettoken:获取session的token自动保存;getTime():获取系统时间ProductCatModelModel类与菜品分类数据对象Model_validat

46、e:自动校验对象;_auto:自动保存属性gettoken:获取session的token自动保存;ActionThinkPHP根底Action类封装了一系列与页面交互属性封装了一系列与页面交互的方法ProductActionAction负责点餐模块与页面交互,与model层交互token:微信公众号标示;wecha_id:微信用户唯一标示;product_model:菜品model;product_cat_model:菜品分类model;isDining:点餐标示_construct():构造方法,用于构造根本属性;cat():菜品分类以及查看所有菜品方法;addProductToCart(

47、);点餐添加到购物车方法;calCartInfo():计算购物车数量价格;_getCart():获取存在缓存中的购物车;orderCart():购物车;my():我的订单3.6 数据库设计与实现根据前面列出的系统架构图、类图、模块划分,开始设计数据库。3.6.1 数据库E-R图在数据库技术中,我们用模型的概念描述数据库的结构与语义,对现实世界进行抽象。表示实体类型及实体间联系的模型称为“数据模型,其中之一就是实体联系模型(ER模型)。ER模型是独立于电脑系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织关心的信息结构,这类模型称为“概念数据模型。在需求分析的根底上对系统的数据库

48、进行详细设计,数据库设计中概念结构设计尤为重要数据库概念结构设计中比拟常用的方法是实体一联系方法,也就是ER方法(EntityRelation Approach)ER图是用来描述数据之间联系的有效方法,有实体、属性、联系3种根本成分。(1) 实体型 :用矩形表示,矩形框内写明实体名(2) 属性:用椭圆型表示,并用无向边与其相应实体连接起来(3) 联系:用菱形表示,菱形框内写明联系名,并用无向边与其有关实体连接。 用户 微信公众号管理 管理员管理微信点餐拥有菜品分类菜品餐桌关联拥有订单关联1n 1n n 11 1n 图3.6.1 微信点餐模块E-R图3.6.2 数据库设计 基于上述的需求分析,需

49、要设计以下各表这些表之间相互关联共同存储着系统所需要的数据。本系统数据库wxorder中共有个数据库表,表的名字和要存储的内容如表4-1所示。表3-6-2-1 数据库表序号数据库表存储内容1imicro_areply存放商家设置的首次关注回复内容2imicro_classify存放商家微官网分类信息3imicro_flash存放商家微官网首页幻灯片信息4imicro_function存放商家的公众号所具有的功能权限5imicro_home存放微信号首页回复设置信息6imicro_keyword存放微信号关键词设置信息7imicro_lettery存放推广活动的设置信息8imicro_lette

50、ry_record存放推广活动的中奖领奖记录9imicro_member_card_contact存放会员卡上商家联系方式地址等10imicro_member_card_create存放发放的会员卡信息以及领卡人信息11imicro_member_card_set存放微信会员卡卡面的图片信息等12imicro_member_card_sign存放微信会员卡积分信息14imicro_other存放微信无法识别自动回复设置信息15imicro_product存放微信订餐菜品信息16imicro_product_cart存放客户下单后的购物车信息17imicro_product_cart_list存放下单后每个购物车的详细商品信息18imicro_product_cat存放菜品分类信息19imicro_product_dining_table存放订餐桌台信息20imicro_reply_info存放微信订餐设置回复信息21imicro_requestdata存放微信用户请求该商家公众号信息22imic

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论