目录:
完整代码:https://github.com/Zzzhouxiaochen/Order
项目背景:
点菜系统是一种全新的、集无线、网络、嵌入式技术、人工智能等技术于一体的无线手持终端。适用于餐饮,酒店、咖啡厅等场所的餐台管理、点菜录单、结算、信息反馈与传递。结合传统的点菜管理系统,为餐饮、酒店、咖啡厅等行业的经营管理提供了一整套高效、稳定可靠、先进的解决方案,改变了餐饮等行业的手工经营方式,提高了服务效率和顾客满意程度,提升了店面形象,最终提升了企业竞争力与经营效益。
可行性研究:
- 技术可行性——主要服务器、客户端——HTTP协议实现
- 操作可行性——大众操作
- 经济可行性——低成本
中间的数据存储部分:使用MySql数据库的操作。
需求分析:
顾客扫描餐桌上的二维码进入顾客客户端,进行点菜。订单提交到服务器上由商家客户端获取到。
商家通过商家客户端可以进行订单管理和菜品管理。
服务器部分:采用 HTTP协议实现。
客户端部分:HTTP 协议的请求对应用户的下单等,厨房接单等的相关操作。
还有客户端和服务端之间:数据存储部分——数据库,简单的MySql服务端和客户端的数据交互,完成数据存储,管理。
数据库的分析:
1.菜品表:其中包含信息:
- 菜品id:用唯一主键,自增
- 菜名:varchar
- 价格:int
2.订单表:
- 订单号:用唯一主键,自增
- 桌号:varchar
- 时间:time
- 菜品:varchar;用菜品id,而非名字
- 状态:int
详细设计:
- 1. 服务器
- 2. 顾客客户端
- 3. 商家客户端
- 4. 服务端和客户端之间——数据存储部分
1.创建数据库
按照标准数据库语句创建,注:因为一条一条的语句十分麻烦,这里使用写一个文件中,进行重定向 < (标准输入)。
create database if not exists order_system;
use order_system;
create table if not exists dish_table(
dish_id int not null primary key auto_increment,
name varchar(50),
price int);
insert into dish_table values(null,'红烧肉',1200);
insert into dish_table values(null,'回锅肉',2200);
insert into dish_table values(null,'糖醋里脊肉',3200);
insert into dish_table values(null,'红烧鱼肉',4200);
insert into dish_table values(null,'干煸豆角',5200);
create table if not exists order_table(
order_id int not null primary key auto_increment,
table_id varchar(50),
time varchar(50),
dishes varchar(1024),
status int);
insert into order_table values(null,'少林','2019/08/01 12:00','1,2,3,4,5',0);
insert into order_table values(null,'武当','2019/08/01 14:00','1,',0);
insert into order_table values(null,'峨眉','2019/08/01 18:00','1,5',0);
至于数据库的服务器就用 MySql 其自身的。
2.服务器设计
中间数据的存储:用Json结构
响应请求的设置:
编码:
数据库:
create database if not exists order_system;
use order_system;
create table if not exists dish_table(
dish_id int not null primary key auto_increment,
name varchar(50),
price int);
insert into dish_table values(null,'红烧肉',1200);
insert into dish_table values(null,'回锅肉',2200);
insert into dish_table values(null,'糖醋里脊肉',3200);
insert into dish_table values(null,'红烧鱼肉',4200);
insert into dish_table values(null,'干煸豆角',5200);
create table if not exists order_table(
order_id in