import java.util.Scanner;
//吃货联盟
public class MeiTuan {
public static void main(String[] args) {
// 1、首页展示
Scanner sc = new Scanner(System.in);
String[] dishes = { "辣子鸡 ", "佛跳墙 ", "麻辣龙虾", "清水白菜" };
int[] prices = { 30, 88, 68, 168 };
String[][] dingDan = new String[1024][2];
int[] dianZan = new int[4];
System.out.println("*****欢迎来到吃货联盟*****");
int choose = -1;
do {
System.out.println("**************************");
System.out.println("1、我要订餐");
System.out.println("2、查看订单");
System.out.println("3、签收订单");
System.out.println("4、删除订单");
System.out.println("5、我要点赞");
System.out.println("6、退出系统");
System.out.println("**************************");
System.out.print("请选择:");
choose = sc.nextInt();
switch (choose) {
case 1:
System.out.println("我要订餐");
System.out.print("请输入您的姓名");
String name = sc.next();
System.out.println("序号\t菜名\t\t单价\t点赞");
for (int i = 0; i < prices.length; i++) {
System.out.println(i + 1 + "\t" + dishes[i] + "\t" + prices[i] + "元\t" + dianZan[i]);
}
System.out.print("请输入您要选择的菜品");
int rank = sc.nextInt();
System.out.print("请输入份数");
int fenShu = sc.nextInt();
System.out.print("请输入地址");
String address = sc.next();
int time = 0;
do {
System.out.print("请输入送餐时间(10-20点整点)");
time = sc.nextInt();
if (time < 10 || time > 20) {
System.out.println("输入时间有误,请重新输入");
}
} while (time < 10 || time > 20);
// 点餐结束,输出对应信息
int total = prices[rank - 1] * fenShu;
total = total > 50 ? total : total + 5;
System.out.println(
"尊敬的" + name + ",您点了" + fenShu + "份" + dishes[rank - 1] + ",价格是:" + total + "送达时间为:" + time);
// 将订单信息插入数组
for (int i = 0; i < dingDan.length; i++) {
if (dingDan[i][1] == null) {
dingDan[i][0] = dishes[rank - 1] + "\t" + fenShu + "\t" + total + "\t" + name + "\t" + address
+ "\t" + time;
dingDan[i][1] = "已预定";
break;
}
if (i == dingDan.length - 1) {
System.out.println("订单已满,无法预定");
}
}
System.out.println("输入0返回");
choose = sc.nextInt();
break;
case 2:
System.out.println("查看订单");
System.out.println("序号\t菜品\t\t份数\t总价\t姓名\t地址\t时间\t订单状态");
for (int i = 0; i < dingDan.length; i++) {
if (dingDan[i][1] == null) {
break;
}
System.out.println(i + 1 + "\t" + dingDan[i][0] + "\t" + dingDan[i][1]);
}
System.out.println("输入0返回");
choose = sc.nextInt();
break;
case 3:
System.out.println("签收订单");
System.out.println("序号\t菜品\t\t份数\t总价\t姓名\t地址\t时间\t订单状态");
for (int i = 0; i < dingDan.length; i++) {
if (dingDan[i][1] == null) {
break;
}
System.out.println(i + 1 + "\t" + dingDan[i][0] + "\t" + dingDan[i][1]);
}
System.out.println("请输入要确定的订单号:");
int danHao = sc.nextInt();
if (dingDan[danHao - 1][1] == null) {
System.out.println("订单确认失败,没有此订单");
} else if (dingDan[danHao - 1][1].equals("已确定")) {
System.out.println("订单已确定,不可重复确定");
} else {
dingDan[danHao - 1][1] = "已确定";
System.out.println("签收成功");
}
System.out.println("输入0返回");
choose = sc.nextInt();
break;
case 4:
System.out.println("删除订单");
System.out.println("序号\t菜品\t\t份数\t总价\t姓名\t地址\t时间\t订单状态");
for (int i = 0; i < dingDan.length; i++) {
if (dingDan[i][1] == null) {
break;
}
System.out.println(i + 1 + "\t" + dingDan[i][0] + "\t" + dingDan[i][1]);
}
System.out.println("请输入要删除的订单号:");
int shanChu = sc.nextInt();
if (shanChu > 1024 || shanChu < 1) {
System.out.println("输入错误");
} else if (dingDan[shanChu - 1][1] == null) {
System.out.println("订单不存在");
} else if (dingDan[shanChu - 1][1].equals("已预定")) {
System.out.println("订单未完成,不能删除");
} else {
for (int i = shanChu; i < dingDan.length; i++) {
dingDan[i - 1] = dingDan[i];
if (dingDan[i][1] == null) {
break;
}
}
System.out.println("删除成功");
}
System.out.println("输入0返回");
choose = sc.nextInt();
break;
case 5:
System.out.println("我要点赞");
System.out.println("序号\t菜名\t\t单价\t点赞");
for (int i = 0; i < prices.length; i++) {
System.out.println(i + 1 + "\t" + dishes[i] + "\t" + prices[i] + "元\t" + dianZan[i]);
}
System.out.print("请输入您要点赞的菜品序号");
int zan = sc.nextInt();
if (zan < 1 || zan > 4) {
System.out.println("输入错误");
} else {
dianZan[zan - 1]++;
System.out.println(dishes[zan - 1] + "点赞成功,点赞数变为:" + dianZan[zan - 1]);
}
System.out.println("输入0返回");
choose = sc.nextInt();
break;
case 6:
System.out.println("退出系统");
break;
default:
System.out.println("输入错误,请重新输入");
choose = sc.nextInt();
}
} while (choose == 0);
System.out.println("订餐结束,欢迎下次再来");
sc.close();
}
}
下面是运行结果
*****欢迎来到吃货联盟*****
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:1
我要订餐
请输入您的姓名111
序号 菜名 单价 点赞
1 辣子鸡 30元 0
2 佛跳墙 88元 0
3 麻辣龙虾 68元 0
4 清水白菜 168元 0
请输入您要选择的菜品1
请输入份数5
请输入地址111
请输入送餐时间(10-20点整点)10
尊敬的111,您点了5份辣子鸡 ,价格是:150送达时间为:10
输入0返回
0
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:2
查看订单
序号 菜品 份数 总价 姓名 地址 时间 订单状态
1 辣子鸡 5 150 111 111 10 已预定
输入0返回
0
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:3
签收订单
序号 菜品 份数 总价 姓名 地址 时间 订单状态
1 辣子鸡 5 150 111 111 10 已预定
请输入要确定的订单号:
1
签收成功
输入0返回
0
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:4
删除订单
序号 菜品 份数 总价 姓名 地址 时间 订单状态
1 辣子鸡 5 150 111 111 10 已确定
请输入要删除的订单号:
1
删除成功
输入0返回
0
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:5
我要点赞
序号 菜名 单价 点赞
1 辣子鸡 30元 0
2 佛跳墙 88元 0
3 麻辣龙虾 68元 0
4 清水白菜 168元 0
请输入您要点赞的菜品序号1
辣子鸡 点赞成功,点赞数变为:1
输入0返回
0
**************************
1、我要订餐
2、查看订单
3、签收订单
4、删除订单
5、我要点赞
6、退出系统
**************************
请选择:6
退出系统