点餐系统项目规划书.pdfVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

点餐系统项目规划

一、需求分析

此系统由客户端和服务端两部分组成。

1.客户端的功能

1.1注册,输入客户信息,餐桌号(客户以餐桌号为单位)

1.2显示菜单,显示编号,菜名,单价

1.3下订单,若库存不够则需修改订单,生成订单号(一个订单号

对应一个菜名)

1.4删除订单,取消一个菜

1.5修改订单,换一个菜,添加一个菜

1.6查看订单状态,状态分为等待处理,正在处理,处理完成

1.7结账,显示客户点的菜,总金额

1.8退出,所有客户结账后可以退出

2.服务端功能

2.1处理客户端注册请求,发送欢迎信息,保存客户信息

2.2向客户端发送菜单信息

2.3根据客户端的订单信息查询库存,若库存不够则向客户端反

馈信息

2.4库存不够,通知增加库存

2.5将订单加入队列,加工订单

2.6处理客户请求(删除,修改,查看)

2.7生成账单

二、概要设计

1.客户端

1.1客户端与服务端采用TCP协议通信

1.2客户端注册时输入餐桌号,将餐桌号发送给服务端。

1.3客户端显示菜单菜名编号,菜名,单价,菜用一个结构体表示

Structvegetable{

Int编号;

Char菜名;

Int单价;

Int数量;

}

1.4接收服务端的反馈库存信息,根据库存信息确定是否需要修改订

1.5向服务端发送请求,删除,修改,查看订单,先向服务端发送餐

桌号,再发送命令,最后接收服务端的信息。

1.6结账,显示账单信息,先发送餐桌号,发送命令,最后接收服务

端信息

2.服务端

1接收客户端的餐桌号,创建链表L保存客户信息,链表的成员为

customer结构体。客户信息用结构体表示

Structcustomer{

Int餐桌号;

Int菜单;(用数组表示,保存订单号)

Int菜的份数;

Int总金额;

}

2向客户端发送菜单,总共有11种菜

3根据客户端的订单信息生成订单

订单用结构体表示

Structorder{

Int订单号;

Int菜编号;

Int份数;

订单状态;

}

向客户端反馈信息,有库存反馈1,无库存反馈0。若无库存则通知

增加库存,库存用链表表示,共有11个vegetable结构体成员。

4将订单加入等待处理队列,加工订单。等待处理队列用链表。

5删除订单,先查询订单状态(分为等待处理,正在处理,处理完成,

订单状态用枚举)若为等待处理则可以删除,若为其他则不可以删除。

修改订单,先查询订单状态,若为等待处理,则可以更改。

添加订单,将订单添加在等待处理队列的队尾。

6,结账,先获取餐桌号,根据餐桌号发送相应的菜单,金额等信息。

结账完成后删除客户信息,将客户点的菜删除。

总共需要3个线程,pth1接收客户端的订单号,保存客户信息,添

加链表成员,向客户端发送菜单,向客户反馈信息以及根据客户订单

信息生成订单号,将订单信息加入等待队列。主线程加工订单。Pth3

处理客户请求(删除,修改,查看)以及结账。

文档评论(0)

131****9192 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档