import java.util.Scanner;
public class OrderingMgr {
public static String[][] user;
public static int arrays = 4;;
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
user = new String[3][2];
user[2][0] = "aaa";
System.out.println("请输入密码:");
String password = input.next();
if(password.equals(user[2][0])) {
System.out.println("=====欢迎来到管理员界面=====");
System.out.print("请输入要更改数组容量的最大值:");
arrays = input.nextInt();
}else {
System.out.println("密码错误!");
}
String[] names = new String[arrays];
String[] menu = new String[arrays];
int[] times = new int[arrays];
String[] addresses = new String[arrays];
int[] states = new int[arrays];
double[] sumPrices = new double[arrays];
String[] dishNames = { "红烧帝王蟹", "炝锅鱿鱼虾", "美洲炒虾尾", "火爆大鱿鱼"};
double[] prices = {202.5, 80.5, 100.66,66.6};
int[] praiseNums = {666, 555, 678, 777};
String[] date = new String[arrays];
int i = 0;
boolean flag = true;
double sendPrices = 5;
start:do {
System.out.println("今日预计接待" + names.length + "人,加油!!!");
System.out.println("欢迎使用“☆★☆吃货联盟订餐系统2x v1.0 plus+版☆★☆”");
System.out.println("1、登陆\n2、注册\n");
String userChoose = input.next();
switch(userChoose) {
case "1":
if(user[1][1] == null) {
System.err.println("未注册,请先注册!");
break;
}
while(true) {
System.out.print("请输入账号:");
user[0][0] = input.next();
System.out.print("请输入密码:");
user[0][1] = input.next();
if(user[0][0].equals(user[1][0]) && user[0][1].equals(user[1][1]) ) {
System.out.println("登陆成功,下面开始吃货之旅!");
flag = false;
break;
}else {
System.err.println("账号或密码不正确!请重新输入");
}
}
break;
case "2":
while(true) {
System.out.print("请输入账号:");
user[1][0] = input.next();
System.out.print("请输入密码:");
user[1][1] = input.next();
System.out.println("注册成功,是否进入吃货联盟订餐系统?(y/n)");
String y = input.next();
if(y.equalsIgnoreCase("y")) {
flag = false;
break start;
}else {
break;
}
}
break;
default:
System.err.println("输入错啦,这里只有两个选项啊=_=");
}
}while(flag);
do {
System.out.println("欢迎使用“☆★☆吃货联盟订餐系统2x v1.0 plus+版☆★☆”");
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("请选择:");
String choose = input.next();
switch (choose) {
case "1":
if(names[names.length - 1] != null) {
System.out.println("生意太火爆了,订单已满,直接去店里面坐吧");
break;
}
System.out.println("***我要订餐***");
outer: while (true) {
System.out.print("请输入订餐人姓名:");
names[i] = input.next();
System.out.println("序号\t菜名\t\t单价\t\t好评数");
for (int j = 0; j < dishNames.length; j++) {
System.out.println((j + 1) + "\t" + dishNames[j] + "\t\t"
+ prices[j] + "\t\t" + praiseNums[j] + "元");
}
System.out.print("请输入要选择的菜品序号(满100元免送餐费):");
int userNum = 0;
while(true) {
while (!input.hasNextInt()) {
System.err.println("别想玩我╮(╯▽╰)╭请按套路出牌!");
input.next();
}
userNum = input.nextInt();
if((userNum - 1) < dishNames.length && (userNum - 1) > -1
&& dishNames[userNum - 1] != null) {
break;
}else {
System.err.println("╮(╯▽╰)╭你想来盘空气吗?张张嘴就有。");
}
}
int portion = 0;
System.out.println("请输入份数(满100元免送餐费):");
while(true){
while (!input.hasNextInt()) {
System.err.println("别想玩我╮(╯▽╰)╭请按套路出牌!");
input.next();
}
portion = input.nextInt();
if(portion < 0) {
System.out.println("负数啊~~~我也想到了,你想给老板钱吗?(ˉ(∞)ˉ)");
}else if(portion == 0){
System.err.println("不要就算啦(╰_╯)#浪费我来显示!!");
break outer;
}else {
break;
}
}
menu[i] = dishNames[userNum - 1] + portion + "份";
while (true) {
System.out.println("请输入送餐时间(10点到20点之间送餐):");
while (!input.hasNextInt()) {
System.out.println("请输入正确的数字:");
input.next();
}
times[i] = input.nextInt();
if (times[i] >= 10 && times[i] <= 20) {
date[i] = times[i] + "点";
break;
} else {
System.out.println("在送餐时间外,我们不配送的,请选择重新选择!");
}
}
System.out.println("请输入您的地址:");
String address = input.next();
addresses[i] = address;
sumPrices[i] = prices[userNum - 1] * portion;
if (sumPrices[i] < 100) {
System.out.println("未满100元,需要加送餐费5元.");
sumPrices[i] += 5;
}
System.out.println("订餐成功!");
System.out.println("您的订餐信息为:");
System.out.println("序号\t订餐人\t餐品信息\t\t送菜时间\t送餐地址\t\t\t总金额\t配送费");
for (int k = 0; k < names.length; k++) {
if (names[k] != null) {
System.out.println((k + 1) + "\t" + names[k] + "\t" + menu[k] + "\t"
+ date[i] + "\t"+ addresses[k] + "\t\t\t" + sumPrices[k] + "元" + sendPrices + "元");
}
}
System.out.println("确定?<y/n>");
String yesOrNo = input.next();
if (yesOrNo.equalsIgnoreCase("y")) {
flag = true;
i++;
break outer;
}
continue;
}
break;
case "2":
if(flag) {
while(true) {
System.out.println("***查看餐袋***");
System.out.println("序号\t订餐人\t\t餐品信息\t\t送菜时间\t送餐地址\t\t\t总金额\t订单状态\t配送费");
for (int j = 0; j < names.length; j++) {
if (names[j] != null) {
String state = (states[j] == 0) ? "已预订" : "已完成";
date[j] = times[j] + "点";
String sumPrice = sumPrices[j] + "元";
System.out.println((j + 1) + "\t" + names[j] + "\t\t" + menu[j]
+ "\t" + date[j] + "\t"+ addresses[j] + "\t\t\t"
+ sumPrices[j] + "元" + "\t" + state + sendPrices + "元");
}
}
if(isContinue()) {
break;
}else {
continue;
}
}
}else {
System.err.println("关关雎鸠,在河之洲。饿肚吃货,老板好逑~请等等顾客点菜吧-_-|||");
}
break;
case "3":
if(flag) {
order: do {
System.out.println("***签收订单***");
System.out.println("序号\t订餐人\t\t餐品信息\t\t送菜时间\t送餐地址\t\t\t总金额\t订单状态\t配送费");
for (int k = 0; k < names.length; k++) {
if (names[k] != null) {
String state = (states[k] == 0) ? "未签收" : "已签收";
System.out.println((k + 1) + "\t" + names[k] + "\t\t" + menu[k] + "\t"
+ date[k] + "\t" + addresses[k] + "\t\t\t"
+ sumPrices[k] + "元" + "\t" + state + sendPrices + "元");
}
}
System.out.println("请选择要签收的订单:");
int sign = 0;
while(true) {
while (!input.hasNextInt()) {
System.err.println("别想玩我╮(╯▽╰)╭请输入正确格式的订单号:");
input.next();
}
sign = input.nextInt();
if(sign-1 < names.length && (sign - 1) > -1) {
break;
}else {
System.err.println("别想玩我╮(╯▽╰)╭请输入正确的序号!");
}
}
for (int j = 0; j < names.length; j++) {
if ((sign - 1) < names.length && names[sign - 1] != null) {
if (states[sign -1] == 1) {
System.err.println("订单已签收!无需再次签收!");
} else {
states[sign - 1] = 1;
System.out.println("订单签收成功!");
break;
}
} else {
System.err.println("订单不存在哎?_?");
continue order;
}
}
} while (!isContinue());
}else {
System.err.println("关关雎鸠,在河之洲。败金饿肚,老板好逑~请等等顾客点菜吧-_-|||");
}
break;
case "4":
if(flag) {
exit:do {
System.out.println("***删除订单***");
System.out.println("序号\t订餐人\t\t餐品信息\t\t送菜时间\t送餐地址\t\t\t总金额\t订单状态\t配送费");
for (int j = 0; j < names.length; j++) {
if (names[j] != null) {
String state = (states[j] == 0) ? "已预订" : "已完成";
date[j] = times[j] + "点";
String sumPrice = sumPrices[j] + "元";
System.out.println((j + 1) + "\t" + names[j] + "\t\t" + menu[j]
+ "\t" + date[j] + "\t"+ addresses[j] + "\t\t\t"
+ sumPrices[j] + "元" + "\t" + state + sendPrices + "元");
}
}
int num = 0;
while(true) {
System.out.println("请输入要删除的订单序号:");
while (!input.hasNextInt()) {
System.err.println("又开始玩了╮(╯▽╰)╭请输入正确格式的订单号!");
input.next();
}
num = input.nextInt();
if((num - 1) < names.length && (num - 1) > -1 && names[num - 1] != null) {
break;
}else {
System.err.println("手抖了吧( ⊙ o ⊙ )啊!╮(╯▽╰)╭无此订单!");
if(isContinue()) {
break exit;
}else {
continue;
}
}
}
if (states[num - 1] == 1) {
for (int j = (num - 1); j < (names.length - 1); j++) {
names[j] = names[j + 1];
menu[j] = menu[j + 1];
times[j] = times[j + 1];
date[j] = date[j + 1];
addresses[j] = addresses[j + 1];
sumPrices[j] = sumPrices[j + 1];
states[j] = states[j + 1];
int endDel = (names.length - 1);
names[endDel] = null;
menu[endDel] = null;
times[endDel] = 0;
date[endDel] = null;
addresses[endDel] = null;
sumPrices[endDel] = 0;
states[endDel] = 0;
if(names[0] == null) {
flag = false;
break;
}
}
System.out.println("成功删除订单!");
} else {
System.err.println("该订单未被签收!是否强制删除?"
+ "(强制删除请输入yes,返回请任意输入)");
String yes = input.next();
if (yes.equalsIgnoreCase("yes")) {
for (int j = (num - 1); j < (names.length - 1); j++) {
names[j] = names[j + 1];
menu[j] = menu[j + 1];
times[j] = times[j + 1];
date[j] = date[j + 1];
addresses[j] = addresses[j + 1];
sumPrices[j] = sumPrices[j + 1];
states[j] = states[j + 1];
int endDel = (names.length - 1);
names[endDel] = null;
menu[endDel] = null;
times[endDel] = 0;
date[endDel] = null;
addresses[endDel] = null;
sumPrices[endDel] = 0;
states[endDel] = 0;
if(names[0] == null) {
flag = false;
break;
}
}
System.out.println("成功删除订单!");
} else {
break;
}
}
}while(!isContinue());
}else {
System.err.println("关关雎鸠,在河之洲。败金饿肚,老板好逑~请等等顾客点菜吧-_-|||");
}
break;
case "5":
if(dishNames[0] != null) {
do {
System.out.println("***我要点赞***");
System.out.println("序号\t餐品信息\t\t好评数");
for (int j = 0; j < dishNames.length; j++) {
System.out.println((j+1) +"\t" + dishNames[j] +"\t\t" + praiseNums[j]);
}
System.out.print("菜品味道不错吧,来为它点个赞吧:");
int like = 0;
while(true) {
while (!input.hasNextInt()) {
System.err.println("想想别的玩法吧╮(╯▽╰)╭,请重新正确格式的序号!");
input.next();
}
like = input.nextInt();
if ((like - 1) < praiseNums.length && dishNames[like - 1] != null) {
praiseNums[like - 1]++;
System.out.println("点赞成功!");
break;
}else {
System.err.println("点赞要厚道╮(╯▽╰)╭请输入正确的菜单序号。");
}
}
}while(!isContinue());
}else {
System.err.println("只有陶醉肚子的美食,才有挣不完的金钱,赶快加菜吧(¯﹃¯)");
}
break;
case "6":
System.out.println("谢谢使用,欢迎下次光临!");
System.exit(0);
default:
System.err.println("请输入正确的数字");
}
System.out.println("*************************************");
} while (true);
}
public static boolean isContinue() {
Scanner input = new Scanner(System.in);
System.out.println("是否返回主菜单?(y/n)");
String yesOrNo = input.next();
if(yesOrNo.equalsIgnoreCase("y")) {
return true;
}else {
return false;
}
}
}