无线点餐系统软件功能设计
来源:未知 时间:2021-04-30 浏览次数:207次
一.设计目标- 是为了开发一种可以方便消费者点菜,更人性化,贴心的点菜系统。
- 系统界面友好,功能完善,既便于顾客查看、点菜,又利于酒店管理。
适用于中高档餐厅、酒店、酒楼等餐饮企业。
三.用户角色分析
客户:客户是该系统的主要使用者,操作简单,无需进行繁琐的数据输入操作。对客户的计算机系统使用技能无任何要求,识字即会使用。
管理人员:作为酒店管理人员在使用该系统时也无需进行繁琐操作,只要熟悉管理流程,稍加培训即可上岗。
该系统由服务器端,手持端,厨房端外接ZigBee来实现无线通讯而构成,该网络拓扑图如图3.1。
四.系统功能设计
1.系统组成
该系统由服务器端,手持端,厨房端外接ZigBee来实现无线通讯而构成
2.手持客户端子系统
初始化菜单:服务员终端开机后,通过无线接收模块从服务器数据库下载并初始化菜谱。
开台:在客户坐定后,服务员发送桌号服务端,进行开台操作。
点菜:开台后记录客户点菜信息并发送至服务器。
加菜:选择需要加菜的台号,并加入客户需要点的菜发送至服务器。
退菜:选择需要退菜的台号,选择用户需要退订的菜,等待服务器返回信息。
催菜:选择需要催菜的台号及需要催的菜,发送至服务器。
结账:向服务器发送当前需要结账的台号并接收服务端发送的账单显示。
发送菜单:把顾客点所菜的编号以及点菜时间串分条发送至服务器。
3.服务器端子系统
图3.3为服务器端流程图,该模块有以下功能:
登录:服务器端的用户账号和密码建立对应的服务,经服务器检验,确定是否有效,如果密码或用户账号无效则登录失败服务器拒绝提供进一步的服务直到验证通过。
用户管理:管理员用户拥有用户管理权限,其操作包括用户的添加、删除、修改信息(权限(收银员(前台管理员)和管理员)、密码、用户名、性别、联系方式、身份证号)。
菜品管理:管理员用户拥有菜品管理权限,其操作包括添加菜品,删除菜品,修改菜品的信息(菜品的单价、菜品菜品菜品名、状态、所属类别,备注)以及设定厨师个数。
客户端初始化:包括服务员终端初始化(菜品列表中的菜品的编号、名称、单价、菜品所属类型、菜品状态、备注)和厨房终端初始化(查询服务器的是否菜可做,有菜则发送)。
处理客户菜单信息:将对应的台号开台,然后建立对应台号的消费表,并将数据按顺序插入未完成菜的表单中。
处理加菜信息:将信息模块发送的内容信息分割得到需要处理信息,检查未完成菜的表单中是否还有对于这桌的菜,如果有的话则将这个菜的优先级改为默认,否则优先级改为1,,插入未完成菜的表单中返回点菜受理信息。
处理退菜信息:前期信息处理同加菜处理,提取信息后检查当前需要退的菜是否在未完成菜的表中,如果还在未未完成的菜的表单中则从表单中删除此菜返回退才成功,其它则返回退菜失败信息。
处理催菜信息:检查对应的桌菜单是否有这个菜,如果有或者已经完成则将对应的菜的优先级调至催菜状态返回催菜成功,如果没有这个菜则返回催菜失败。
厨房信息处理:服务信息分两类,首先是菜单更新信息,接收到此类信息则服务器将已经准备好的需要制作的菜单发送至厨房,其次是厨房的对于菜品原材料缺失信息的返回,接收到信息后将对应的菜谱的表单中状态改变为缺菜,并向所有服务员终端发送对应菜品缺失的消息。
菜选取处理:从未完成的菜的表中选取10个优先级大于0的菜,如果菜未满10个则按时间序列选择较小时间序列的菜发送至厨房每发送一条则判断菜的所属桌号,加入对应的桌号的已完成表单中。
结算:服务器收到服务员端的针对某一桌的结账信息后,对应的结算的桌号的消费单中所有已经完成的菜品统计添加相应的交易号,显示或打印账单,提示当前登录的空闲的收银员收银,结算完毕后将账单数据移至当日详细营业历史表并加上对应的交易号,删除当前桌的消费表。
信息接收块:将接受到得数据进行分割,获取用户的用户编号操作命令字及操作内容的信息并分类调用相关处理模块进行对应的数据处理。
信息发送块:区分消息发送的用户并加上对应的命令字以及操作信息发送至对应的服务终端。
图3.3为服务器端流程图,该模块有以下功能:
登录:服务器端的用户账号和密码建立对应的服务,经服务器检验,确定是否有效,如果密码或用户账号无效则登录失败服务器拒绝提供进一步的服务直到验证通过。
用户管理:管理员用户拥有用户管理权限,其操作包括用户的添加、删除、修改信息(权限(收银员(前台管理员)和管理员)、密码、用户名、性别、联系方式、身份证号)。
菜品管理:管理员用户拥有菜品管理权限,其操作包括添加菜品,删除菜品,修改菜品的信息(菜品的单价、菜品菜品菜品名、状态、所属类别,备注)以及设定厨师个数。
客户端初始化:包括服务员终端初始化(菜品列表中的菜品的编号、名称、单价、菜品所属类型、菜品状态、备注)和厨房终端初始化(查询服务器的是否菜可做,有菜则发送)。
处理客户菜单信息:将对应的台号开台,然后建立对应台号的消费表,并将数据按顺序插入未完成菜的表单中。
处理加菜信息:将信息模块发送的内容信息分割得到需要处理信息,检查未完成菜的表单中是否还有对于这桌的菜,如果有的话则将这个菜的优先级改为默认,否则优先级改为1,,插入未完成菜的表单中返回点菜受理信息。
处理退菜信息:前期信息处理同加菜处理,提取信息后检查当前需要退的菜是否在未完成菜的表中,如果还在未未完成的菜的表单中则从表单中删除此菜返回退才成功,其它则返回退菜失败信息。
处理催菜信息:检查对应的桌菜单是否有这个菜,如果有或者已经完成则将对应的菜的优先级调至催菜状态返回催菜成功,如果没有这个菜则返回催菜失败。
厨房信息处理:服务信息分两类,首先是菜单更新信息,接收到此类信息则服务器将已经准备好的需要制作的菜单发送至厨房,其次是厨房的对于菜品原材料缺失信息的返回,接收到信息后将对应的菜谱的表单中状态改变为缺菜,并向所有服务员终端发送对应菜品缺失的消息。
菜选取处理:从未完成的菜的表中选取10个优先级大于0的菜,如果菜未满10个则按时间序列选择较小时间序列的菜发送至厨房每发送一条则判断菜的所属桌号,加入对应的桌号的已完成表单中。
结算:服务器收到服务员端的针对某一桌的结账信息后,对应的结算的桌号的消费单中所有已经完成的菜品统计添加相应的交易号,显示或打印账单,提示当前登录的空闲的收银员收银,结算完毕后将账单数据移至当日详细营业历史表并加上对应的交易号,删除当前桌的消费表。
信息接收块:将接受到得数据进行分割,获取用户的用户编号操作命令字及操作内容的信息并分类调用相关处理模块进行对应的数据处理。
信息发送块:区分消息发送的用户并加上对应的命令字以及操作信息发送至对应的服务终端。
4.厨房端子系统
图3.3为服务器端流程图,该模块有以下功能:
信息接受:接受从服务器传过来的菜单信息。菜单更新处理,做完一道菜之后,查询当前厨房未做菜和厨师人数比较如果菜数小于厨师数则请求服务器发送新的表单。
缺菜处理:当前菜单中的菜缺失材料或其它情况不能做出则返回对应菜的缺菜信息。
图3.3为服务器端流程图,该模块有以下功能:
信息接受:接受从服务器传过来的菜单信息。菜单更新处理,做完一道菜之后,查询当前厨房未做菜和厨师人数比较如果菜数小于厨师数则请求服务器发送新的表单。
缺菜处理:当前菜单中的菜缺失材料或其它情况不能做出则返回对应菜的缺菜信息。
5.性能设计
响应性:所有选菜响应时间一般不超过5S。
更新处理时间:所有提交的新的菜品的数据一般在3S内响应。响应性:所有选菜响应时间一般不超过5S。
- 上一篇: 一文读懂pytorch软件开发基础语法
- 下一篇: log4漏洞修复方法