公司订餐系统Java

故事扮演 提交于 2019-11-27 08:13:30
package try01;
import java.util.LinkedList;
import java.util.Scanner;

//--------------------------以下是数据库-----------------------------------:
//数据库------用户
class User{
	public static String[] user = new String[10];//用户名
	public static String[] passwd = new String[10];//密码
	public static String[] work = new String[10]; //工作
	
	public User(){
		User.user[0] = "曹帅龙";
		User.passwd[0] = "123456";
		User.work[0] = "前台员工";
		User.user[1] = "王海瑞";
		User.passwd[1] = "234567";
		User.work[1] = "普通员工";
		User.user[2] = "胡欣哲";
		User.passwd[2] = "345678";
		User.work[2] = "普通员工";
	}
	
}
//数据库---------商家
class shopmessage extends User{
	public static String[] names = new String[10];//店名
	public static String[][] foodname = new String[10][10];//菜名。
	double[][] price = new double[10][10];//价格。
	shopmessage() {
		this.names[0] = "肯德基";
		this.foodname[0][0] = "汉堡";
		this.price[0][0] = 12.5;
		this.names[1] = "麦当劳";
		this.foodname[1][0] = "薯条";
		this.price[1][0] = 6;
		this.names[2] = "包子铺";
		this.foodname[2][0] = "包子";
		this.price[2][0] = 1;
	}
}
//数据库-----订餐
class Order extends shopmessage{
	String[] name = new String[10];//储存订单着姓名。
	//[] works = new String[10];//订餐者的职位.
	String[] food = new String[10];//订单着所订的食物。
	int[] sum = new int[10];//储存食物的份数。
	double[] sums = new double[10];//总价钱
}



//-----------------------以上是数据库信息-----------------------------------;

//-----------------------以下是对员工进行操作-----------------------------------------;
//员工的修改
class Reword extends User
{
	public static void rw(){
		Scanner scanner = new Scanner(System.in);
		System.out.print("请输入你要修改的用户名:");
		String name = scanner.nextLine();
		for(int x = 0; x < user.length; x++)
		{
			if(user[x]!=null) {
				if(user[x].equals(name)&&user[x]!=null)
				{
					System.out.print("请输入要修改的密码:");
					String rpasswd = scanner.nextLine();
					User.passwd[x] = rpasswd; 
					System.out.print("密码修改成功!!");
					System.out.print("请输入要修改职业:");
					User.work[x] = scanner.next();
					System.out.print("修改成功!!");
					break;
				}
				else if(!user[x].equals(name)) 
				{
					System.out.print("用户名错误");
				}
			}
		}
	}
}
//员工的删除
class delectstaff extends User
{
	Scanner sc = new Scanner(System.in);
	int size = user.length;
	public void delectstaff() {
		
		System.out.print("请输入需要删除的员工姓名:");
		String name = sc.next();
		System.out.print("请输入密码:");
		String passwds = sc.next();
		for(int i =0;i<size;i++)
		{
			if(user[i]!=null)
			{
				if(user[i].equals(name)&&passwd[i].equals(passwds))
				{
					user[i] = null;
					passwd[i] = null;
					work[i] = null;
					break;
				}
				else if(!user[i].equals(name)||!passwd[i].equals(passwds)) 
				{
					System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
					System.out.print("用户名或者密码错误");
					break;
				}
			}
		}
	}
}

//登录操作
class Login extends User
{
	public static boolean lonc(){
		
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入用户名:");
		String users = scanner.nextLine();
		System.out.println("请输入用户密码:");
		String passwds = scanner.nextLine();
		
		for(int i = 0; i < user.length;i++)
		{
			if(user[i]!=null) {
				if(user[i].equals(users)&&passwd[i].equals(passwds))
				{
					System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
					System.out.println("登录成功!欢迎使用!");
					return true;
				}
			}
		}
		System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
		System.out.println("登录成败!!无法使用该系统!!");
		return false;
	}
}
//添加员工
class Addstaff extends User
{
	Scanner sc = new Scanner(System.in);
	String name;
	String works;
	String passweds;
	int size = user.length;
	
	
	public void Addstaffs() {//构造函数负责输入
		System.out.print("请输入用户名:");
		this.name = sc.next();
		System.out.print("请输入密码:");
		this.passweds = sc.next();
		System.out.print("请输入职业:");
		this.works = sc.next();
		for(int i = 0;i<size;i++)
		{
			if(user[i]==null&&passwd[i]==null)
			{
				user[i] = name;
				passwd[i] = passweds;
				work[i] = works;
				break;
			}
		}
	}{}
}
//员工查找
class Findstaff extends User{
	Scanner sc = new Scanner(System.in);
	String name;
	int size = user.length;
	public void Findstaff() {
		System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
		System.out.print("请输入要查找的姓名:");
		name = sc.next();
		for(int i = 0; i < size;i++)
		{
			if(user[i]!=null)
			{
				if(user[i].equals(name))
				{
					System.out.println("\t"+"姓名:"+user[i]+"\t"+"职位:"+work[i]+"\t");
					break;
				}
				else {
					continue;
				}
			}
		}
		System.out.print("没有找到!!");
	}
}
//主页面
class Mun{
	public  void operation(){
		Scanner scanner = new Scanner(System.in);
		Login D = new Login();
		Reword X = new Reword();
		Caozuo a = new Caozuo();
		delectstaff y = new delectstaff();
		Addstaff A = new Addstaff();
		Findstaff B = new Findstaff();
		int f = 1;
        while(f!=0)
        {
        	System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
            System.out.println("|"+"\t" + "测试用户名:曹帅龙 测试密码:123456" + "\t"+ "\t"+ "\t"+ "\t"+"|");
            System.out.println("|" + "\t"+ "请输入[1-2]进行操作 1.登录|2.修改用户 |3.员工的删除:|4.员工的添加 |5.查找员工信息|0:退出系统" + "\t"+"|");
            System.out.print("请输入:");
             f = scanner.nextInt();
        	switch(f) {
        	case 1:
        		boolean choise = Login.lonc()   ;//如果返回ture登录成功进入主界面
        		if(choise) {				    //如果为false登录失败
        			a.run();
        			break;
        		}
        		else
        		break;
        	case 2:
        		Reword.rw();            //修改操作
        	    break;
        	case 3:
        		y.delectstaff();       //删除操作
        		break;
        		
        	case 4:
        		A.Addstaffs();         //添加操作
        		break;
        	case 5:
        		B.Findstaff();			//查找操作
        		break;
        	case 0:
        		break;
        	default:
        		System.out.println("错误!请重写输入正确的数字进行操作!");
        		break;
        	}
        		
        }
		
	}
}
//------------------------以上是对员工进行操作者-----------------------------------------;

//------------------------以下是订餐系统:-------------------------------------------------

//订餐系统
class OrderOperation extends Order{
	public void min(String choise){//主函数
		int choised;
		Scanner minc = new Scanner(System.in);
		System.out.print("\t"+"欢迎进入公司订餐系统!!"+"\t");
			
		System.out.println("\t"+"您只能执行"+choise+"点餐系统"+"\t");
		do {
			System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
			System.out.println("|"+"\t"+"请输入您要执行的操作:1:点餐 2:查看食物袋 0:返回上一级"+"\t"+"|");
			System.out.print("请输入:");
			choised = minc.nextInt();
			switch(choised) {
			case 1:
				System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
				System.out.print("\t"+"以下是我们现有的商家:"+"\t");
				print();//打印一下已有的商家
				System.out.print("请输入商家序号:");
				int u =minc.nextInt();//u是商家的数组第几号商家
				foodprint(u);
				foodding(u,choise);
				break;
			case 2:
				shopbag();
				break;
			case 0:
				break;
			default:
				System.out.println("输入错误");
				break;
			}
		}
		while(choised!=0);
	}
	//食物选择
	private void foodding(int u,String b) {
		Scanner dd = new Scanner(System.in);
		System.out.println("请输入食物序号:");
		int c = dd.nextInt();//用户输入的第几位食物
		System.out.println("请输入订餐者姓名:");
		String names = dd.next();
		int s = Is();   //第几个订餐名单是空的
		for(int i=0;i<user.length;i++)
		{
			
			if(user[i]!=null)
			{
				if(user[i].equals(names))
				{
					name[s]=names;
					food[s]=foodname[u][c];
					System.out.print("请输入份数:");
					int suma = dd.nextInt();
					sum[s]=suma;
					sums[s]=sum[s]*price[u][c];
					break;
				}
			}
		}
		
		
		
	}
	//判断购物袋为空位置
	private int Is()
	{
		for(int i = 0;i<name.length;i++)
		{
			if(name[i]==null)
				return i;
		}
		return -1;
	}
	//商家袋
	private void print()
	{
		System.out.println("店家信息:");
		int lent = user.length;
		for(int i =0;i<lent;i++)
		{
			if(names[i]!=null)
			{
				System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
				System.out.println("\t"+"序号:"+i+"店名:"+names[i]+"\t");
				System.out.println("\t"+"\t"+"\t"+"\t"+"\t"+"\t");
			}
		}
	}
	//商家食物袋
	private void foodprint(int u)
	{
		System.out.println("\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t");
		System.out.print("\t"+ "已经进入-"+names[u]+"-店铺"+"\t");
		for(int y =0 ;y<foodname[u].length;y++)
		{
			if(foodname[u][y]!=null)
			{
				System.out.println("\t"+y+":"+"名称:"+foodname[u][y]+"\t"+"价格:"+price[u][y]+"\t");
				System.out.println("\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t");
			}
		}
	}
	//购物袋
	private void shopbag()
	{
		System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
		System.out.println("\t"+ "当前购物袋"+"\t");
		for(int i = 0; i<name.length;i++)
		{
			if(name[i]!=null)
			{
				System.out.println("\t"+"姓名:"+name[i]+"\t"+"订单:"+food[i]+"\t"+"份数:"+sum[i]+"\t"+"价格:"+sums[i]+"\t");
			}
		}
	}
}

//-----------------------------以上是订餐系统---------------------------------------------



//--------------------------以下是员工操作系统---------------------------------------
class staffOperation{
	Scanner nb = new Scanner(System.in);
	OrderOperation runn = new OrderOperation();
	int chs;
	public void runs(){
		System.out.println("|"+"\t"+"\t"+"这是员工操作平台:"+"\t"+"\t"+"|");
		System.out.println("|"+"\t"+"\t"+"                "+"\t"+"\t"+"|");
		do {
			System.out.println("|"+"\t"+"\t"+"1:订餐  0:返回上一级"+"\t"+"\t"+"|");
			System.out.println("请输入操作:");
			chs = nb.nextInt();
			switch(chs)
			{
			case 1:
				runn.min("普通员工");
				break;
			case 0:
				break;
			default:
				System.out.println("输入错误!!");
			}
		}while(chs!=0);
	}
}
//---------------------------以下是前台操作系统---------------------------------------------

class Administrators extends shopmessage{
	public void page(){
		Scanner sc = new Scanner(System.in);//创建输入对象
		int choise;    //选择
		OrderOperation ding = new OrderOperation();
		System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
		System.out.println("|" + "\t"+ "请输入你要操作的对象[0-3]:1:商家  2:菜品  3:订餐  0:返回上一级" +"|");
		do{
			System.out.print("请输入:");
			choise = sc.nextInt();
			switch(choise)
			{
				case 1:
					int c;
					System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
					System.out.println("|"+"\t"+"这里是商家操作系统:1:添加 2:删除 3:修改 4:查找 0:返回上一级 "+"|");
					do {
						System.out.print("请输入你要执行的操作:");
						c = sc.nextInt();
						switch (c) {
							case 1:
								addshop();//添加商家
								break;
							case 2:
								System.out.println("请输入你要删除的店家名称:");//删除商家
								String na = sc.next();
								delectshop(na);
								break;
							case 3:
								System.out.println("请输入你要修改的店家名称:");//修改商家
								String cn = sc.next();
								boolean v = modify(cn);
								break;
							case 4:
								System.out.println("请输入你要查找的店家名称:");//查找商家
								String nm = sc.next();
								int co = fondshop(nm);
								break;
							case 0:
								break;
							default:
								System.out.println("输入无效!!");
						}
						
					}while(c!=0);
					break;
				case 2:
					int ch;
					System.out.println("请输入你要执行的商家:");//单个对商家进行操作
					String choose = sc.next();
					int uoou = fondshop(choose);
					System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
					System.out.println("|"+"\t"+"这里是菜品操作系统:1:添加 2:删除 3:修改 4:查找 0:返回上一级 "+"|");
					do {
						System.out.println("请输入你要执行的操作:");
						ch = sc.nextInt();
						switch (ch) {
							case 1:
								addfood(uoou);
								break;
							case 2:
								delectfood(uoou);
								break;
							case 3:
								modify(uoou);
								break;
							case 4:
								findfood(uoou);
								break;
							case 0:
								break;
							default:
								System.out.println("输入无效!!");
								break;
						}
						
					}while(ch!=0);
					break;
				case 3:
					ding.min("前台");
					break;
				case 0:
					break;
				default:
					System.out.println("输入无效!!");
					break;
				
			}
			}while(choise!=0);
		}
	
	//修改商家
	private boolean modify(String name) {
		Scanner sc = new Scanner(System.in);
		int n = names.length;
		for(int i = 0; i < n; i++)
		{
			if(names[i]!=null)
			{
				if(names[i].equals(name))
				{
					System.out.println("请输入修改后的名字:");
					names[i] = sc.next();
					return true;
				}
			}
		}
		
		return false;
	}
	//查找商家
	private int fondshop(String dename) {
		Scanner ne = new Scanner(System.in);
		int size = names.length;
		for(int i = 0;i<size;i++)//查找店家
		{
			if(names[i]!=null) {
				if(dename.equals(names[i]))
				{
					System.out.println("商家店名:"+names[i]);
					for(int y = 0 ;y<foodname[i].length;y++)//打印食物
					{
						if(foodname[i][y]!=null)
						{
							System.out.println("\t"+"食物:"+y+1+"\t"+foodname[i][y]+"价格:"+price[i][y]+"\t");
						}
					}
					return i;
				}
			}
		}
		System.out.println("没有这家店!!");
		return -1;
		
	}
	//删除商家;
	private void delectshop(String dename) {
		Scanner ne = new Scanner(System.in);
		int size = names.length;
		for(int i = 0;i<size;i++)
		{
			if(names[i]!=null)
			{
				if(dename.equals(names[i]))
				{
					names[i] = null;//清楚商家
					foodname[i] = null;//菜品清空
					break;
				}
			}
		}
		
	}
	//添加商家
	private void addshop() {
		Scanner ne = new Scanner(System.in);
		int size = names.length;
		for(int i = 0;i < size; i++)
		{
			if(names[i]==null)
			{
				System.out.println("请输入添加的商家店名:");
				names[i] = ne.next();
				System.out.println("请添加一道菜:");
				
				foodname[i][0] = ne.next();
				
				System.out.println("请输入价格:");
				price[i][0] = ne.nextDouble();
				
				break;
			}
		}
		System.out.println("添加成功!!");
	}
	
	//添加食物
	private void addfood(int i)
	{
		Scanner oi = new Scanner(System.in);
		System.out.print("输入食物姓名:");
		String foodn = oi.next();
		System.out.print("输入价格");
		double pri = oi.nextDouble();
		int len = foodname[i].length;
		for(int y = 0;y < len; y++)//查找食物
		{
			if(foodname[i][y]==null)//查找空位
			{
				foodname[i][y] = foodn;
				price[i][y] = pri;
				break;
			}
		}
		System.out.print("添加成功!!");
	}
	//删除食物
	private void delectfood(int i)
	{	
		Scanner oi = new Scanner(System.in);
		System.out.print("输入食物名称:");
		String foodn = oi.next();
		int len = foodname[i].length;
		for(int y = 0;y < len; y++)//查找食物
		{
			if(foodname[i][y]!=null)
			{
				if(foodname[i][y].equals(foodn))//查找食物
				{
					foodname[i][y]=null;
					price[i][y] = (Double) null;
					System.out.print("删除成功!!");
					break;
				}
			}
		}
		System.out.print("添加成功!!");
	}
	//修改食物
	private void modify(int i)
	{
		Scanner oi = new Scanner(System.in);
		System.out.print("输入要修改食物名称:");
		String foodn = oi.next();
		int len = foodname[i].length;
		for(int y = 0;y < len; y++)//查找食物
		{
			if(foodname[i][y]!=null)//查找名称
			{
				if(foodname[i][y].equals(foodn))//修改信息
				{
					System.out.print("输入修改后的名称:");
					foodn = oi.next();
					System.out.print("价格是否要修改?");
					String han = oi.next();
					if(han.equalsIgnoreCase("是"))
					{
						System.out.print("请输入修改后的价格:");
						price[i][y] = oi.nextDouble();
					}
					else
					{
						break;
					}
					break;
				}
			}
		}
		System.out.print("修改成功!!");
	}
	//自动查找食物
	private void findfood(int i)
	{
		int lenth = foodname[i].length;
		for(int y = 0;y < lenth;y++)
		{
			if(foodname[i][y]!=null)
			{
				System.out.println("\t"+"名称:"+foodname[i][y]+"\t"+"价格:"+price[i][y]+"\t");
			}
		}
	}
}
//--------------------------以上是前台操作系统---------------------------------------



//--------------------------以下是管理员系统------------------------------------------
//登录后管理员系统
class Caozuo
{
	public void run() {
		System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
		System.out.println("欢迎登录公司管理员系统:");
		Scanner scanner = new Scanner(System.in);
		Administrators Ad = new Administrators();
		staffOperation Bd = new staffOperation();
		while(true)
		{
			System.out.println("|"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+"\t"+"|");
            
            System.out.println("|" + "\t"+ "请输入你要操作的对象[0-2]:1:员工  2:前台 0:返回上一级" + "\t"+"|");
            System.out.print("请输入:");
            int choise = scanner.nextInt();
            switch(choise) {
            case 1:
            	Bd.runs();
            	break;
            case 2:
            	Ad.page();
            	break;
            case 0:
            	break;
            }
            if(choise==0)
            	break;
		}
	}
}


//--------------------------以上是管理员系统---------------------------------















public class Deng03 {
	public static void main(String[] args)
	{
		Mun start = new Mun();
		start.operation();
	}

}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!