无线点餐系统课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目10 无线点餐系统
一、设计目的
传统的餐饮行业,点餐过程都是由餐厅服务员人工完成的。通常的过程是这样的,客人进入餐厅后,选择好桌位并开始点餐,服务员等待客人点餐完成,将客人的点餐内容送到厨房,由厨师下厨做菜。这一过程对于一个很小的餐馆来说没有问题,但是如果餐馆比较大或客人比较多,客人的等待时间就会比较长。为了解决这个问题,今年出现的无线点餐系统,该系统一般有无线终端(一般是一个PDA)、无线路由器和后台服务器组成。
这种技术架构很成熟,但是存在一个弊端就是PDA的价格较高,并且PDA 只能作为点餐使用,这无形中增加了系统成本,也造成了资源的浪费。利用WinCE 手机嵌入式系统,我们可以在其中开发一套客户端软件来完成点餐功能。这样既避免了资源的浪费,又能够提高大型餐饮企业的工作效率。
二、开发环境
程序在Visual Studio 2005开发环境中编写与编译,使用C++与MFC作为开发的语言环境。利用SQLite数据库实现数据表的建立。
三、设计任务及要求
3.1 系统总体结构
3.2 系统功能
通过对系统进行需求分析,我们了解了系统的需求。通过系统物理架构和技术选择,我们确定了项目的可行性。接下来我们将对系统功能进行介绍。
(1) 系统的登录功能
为了增强系统的使用安全,使用系统之前必须登录系统,登录过程是通过网络,在后台的数据库通过用户名称和密码进行查询。注册用户方可使用该系统。界面如图3-1所示。
(2) 系统主菜单
系统登录成功之后便进入了系统主菜单,主菜单通过一个图形菜单的方式来展现系统的功能,单击某个选项便进入该功能的操作界面。运行界面如图3-2所示。
图3-1 系统登录界面图3-2 系统主菜单(
点菜定台转台结台)
(3) 点餐功能
点餐功能模块是本系统中一个重要的功能模块,该模块要完成的任务是操作员输入顾客的点餐信息,通过网络及时地将点餐的信息传送到后台服务器,进而在厨房终端显示,有利于厨师尽快下厨做菜。
该功能包括了三部分:开桌、点菜和下单。运行界面如图3-3所示。
图3-3 点餐运行界面
(4) 结算功能
顾客就餐结束需要结算,结算的过程是:操作员根据订单编号查询点餐订单信息和订单信息详细列表,顾客确认后单击结算按钮进行结算。运行界面如图3-4所示。
(5) 查台功能
当有顾客进入餐馆时,需要服务员查询餐桌状态(有人或空位),来安排顾客就餐。这一过程是通过查询数据库中的餐桌数据得到当前餐桌状态列表,通过可视化的界面来进行显示。程序运行界面如图3-5所示。
图3-4 结算功能模块运行界面图3-5查台功能模块运行结果
(6) 更新功能
为了提高程序的运行效率,将服务器中菜谱表(MenuTbl)和餐桌表(TableTbl)中的数据保存到客户端SQLCE数据库中。因此,当服务器中的数据改变时需要及时将服务器中的数据动态地更新到客户端,更新功能就是为此而设计的。程序运行界面如图3-6所示。
图3-7 更新功能模块运行界面结果
(7) 转台功能
转台功能是指客户下单后,要求更换座位,这时需要更改已经提交的数据。更改的过程是根据订单号找到该订单对应的桌号,将该桌号更改为更换后的桌号。程序运行界面如图3-8所示。
(8) 并台功能
并台功能是将已经下单的两组顾客合并到一张桌子的过程,该过程也需要更新已经提交到数据库中的数据。更新内容包括人数的合并、订单的更新、订单详细的更新和桌位状态的更新。程序运行界面如图3-9所示。
图3-8 转台功能模块运行结果图3-9 并台功能模块运行结果3.3 无线点餐系统详细设计
确定了系统功能之后,我们就可以进行系统的详细设计了。详细设计里主要包括:系统包及其资源规划和系统数据库设计。
(1) 系统包及其资源规划
本系统的主要功能可以分为三大类:一是访问客户端SQLCE数据库;二是界面展示;三是通过网络访问服务器数据。
(2) 系统数据库设计
程序无非就是:输入、处理和输出。本系统也不例外,除了WinCE客户端
应用程序和中间无线网络,还要有强大的数据库做支持。本系统WinCE客户端采用SQLCE3.0数据库,服务器端采用SQL-Server数据库,并应提供客户端数据和服务器端数据的同步功能,提高程序的运行效率。本节将对系统使用到的表结构进行详细规划做为设计的参考。在课程设计过程中,可以根据自己的设计的进程与需要随时进行调整。
1 系统用户表(USerTbl),登陆系统使用。表结构如图3-10所示。
图3-10 系统用户表结构
2 菜谱分类表(MenuTypeTbl),为了方便点餐,将菜单信息进行分类,如热菜、凉菜等。表结构如图3-11所示。
图3-11 菜谱分类表结构
3 餐桌表(TableTbl),用来表示顾客在哪个桌位就坐。表结构如图3-12所示。
图3-12 餐桌表
4 菜谱表(MenuTbl),菜谱表用来保存菜信息,如分类、名称和价格等。表结构如图3-13所示。
图3-13 菜谱表结构
5 订单表(OderTbl),当顾客开桌点菜时生成的信息,保存到该表。表结构如图3-14所示。
图3-14 订单表结构
6 订单明细表(OrderDetailTbl),订单明细表和上面的订单表是一对多的关系,即一桌客人点了多份菜。表结构如图3-15所示。
图3-15 订单明细表结构