餐廳管理系統

ACM結束了

10天實訓 3000行代碼  垃圾

 

#include <graphics.h>
#include <conio.h>
#include <cstdio>
#include <string.h>
#include <string>
#include <iostream>
#include <windows.h>
#include <time.h>
#include <fstream>
#include <iomanip>
using namespace std;
#define ISLEAP(y) ((y)%400==0||(y)%4==0&&(y)%100!=0)
void MonthDay(int year,int yearDay,int *pMonth,int *pDay)
{
    int i,date[]={31,28,31,30,31,30,31,31,30,31,30,31};
    for(i=0,*pMonth=1;yearDay>date[i];++i,++*pMonth)
    {
        yearDay-=i==1?date[i]+ISLEAP(year):date[i];
    }
    if(yearDay==0)
    {
        --*pMonth;
        *pDay=*pMonth-1==1?date[*pMonth-1]+ISLEAP(year):date[*pMonth-1];
    }
    else
    {
        *pDay=yearDay;
    }
}
/*double a[112345],t[112345];
void merge_sort(int x,int y,double a[],double t[])
{
    if(y>x+1)
    {
        int m=(x+y)/2;
        int p=x,q=m,i=x;
        merge_sort(x,m,a,t);
        merge_sort(m,y,a,t);
        while(q<y || p<m)
        {
            if(q>=y || (p<m && a[p]<=a[q]))
            {
                t[i++]=a[p++];
            }
            else
            {
                t[i++]=a[q++];
            }
        }
        for(i=x;i<y;i++)
            a[i]=t[i];
    }
}*/
struct node
{
	int id,tianshu;
	double sum1,sum2;
};
int num;//菜的總數
int glynum;
int fwynum;
int ygnum;
int xiaofeinum;
/*   時間
			time_t nowtime;  
            struct tm *timeinfo;  
 			time( &nowtime );  
 			timeinfo = localtime( &nowtime );  
  
 			int xtn = timeinfo->tm_year + 1900;  
 			int xty = timeinfo->tm_mon + 1;  
 			int xtr = timeinfo->tm_mday;  
			int xts = timeinfo->tm_hour;
			int xtf = timeinfo->tm_min;
			int xtm = timeinfo->tm_sec;
			
			printf("%d年%d月%d日,%d時%d分%d秒\n",xtn,xty,xtr,xts,xtf,xtm);
*/
class shijian
{
public:
	int Lyear(int years)
	{
		int res = 0;
		if (years %400==0 || years % 4 == 0 && years % 100 != 0)   //計算閏年;
		{
			res = 1;
		}
		return res;
	}

//統計天數
	int star(int years, int month,int day)
	{
				int temp = 0;
				for (int i = 1; i<month;i++)
				{
					if (i == 2 && month > 2)
					{
						if (Lyear(years))
							temp += 29;
						else
							temp += 28;
						continue;
					}
					switch (i)
					{
					case 4:temp += 30;
						continue;
					case 6:temp += 30;
						continue;
					case 9:temp += 30;
						continue;
					case 11:temp += 30;
						continue;
					default:
						break;
					}
					temp += 31;
				}
				return temp + day;            //當月的天數  例如 3月15日  則 +15;
		}
};
shijian sj;
class Guanliyuanzhanghao
{
public:
	char zhanghao[100];
	char mima[100];
};
Guanliyuanzhanghao gly[100];
class Fuwuyuanzhanghao
{
public:
	char zhanghao[100];
	char mima[100];
};
Fuwuyuanzhanghao fwy[100];
class showmain//主界面類
{
public:
    void zhujiemian()
    {
        initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");//
        outtextxy(200,50,"餐廳管理點餐系統");
        IMAGE img1;
        loadimage(&img1, "圖片\\按鈕黃.jpg");
        putimage(150,260 , &img1);
        setcolor(BLUE);
        settextstyle(22,0,"粗體");
        outtextxy(150,260,"服務員登錄");
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕黃.jpg");
        putimage(150,320 , &img3);
        outtextxy(150,320,"管理員登錄");
        IMAGE img2;
        loadimage(&img2, "圖片\\退出鍵.jpg");
        putimage(740,450 , &img2);
		/*char p[100];
		sprintf(p,"%d",xiaofeinum);
		outtextxy(400,400,p);*/
    }
};
int zhuanhua(int x,int y)
{
    if(x>=20 && x<=64)
    {
        if(y>=130 && y<=157)
        {
            return 1;
        }
        if(y>=180 && y<=207)
        {
            return 5;
        }
        if(y>=270 && y<=297)
        {
            return 9;
        }
        if(y>=320 && y<=347)
        {
            return 13;
        }
        if(y>=410 && y<=437)
        {
            return 17;
        }
    }
    else if(x>=120 && x<=164)
    {
        if(y>=130 && y<=157)
        {
            return 2;
        }
        if(y>=180 && y<=207)
        {
            return 6;
        }
        if(y>=270 && y<=297)
        {
            return 10;
        }
        if(y>=320 && y<=347)
        {
            return 14;
        }
        if(y>=410 && y<=437)
        {
            return 18;
        }
    }
    else if(x>=220 && x<=264)
    {
        if(y>=130 && y<=157)
        {
            return 3;
        }
        if(y>=180 && y<=207)
        {
            return 7;
        }
        if(y>=270 && y<=297)
        {
            return 11;
        }
        if(y>=320 && y<=347)
        {
            return 15;
        }
        if(y>=410 && y<=437)
        {
            return 19;
        }
    }
    else if(x>=320 && x<=364)
    {
        if(y>=130 && y<=157)
        {
            return 4;
        }
        if(y>=180 && y<=207)
        {
            return 8;
        }
        if(y>=270 && y<=297)
        {
            return 12;
        }
        if(y>=320 && y<=347)
        {
            return 16;
        }
        if(y>=410 && y<=437)
        {
            return 20;
        }
    }
	return 0;
}
class zhuozi
{
public:
    zhuozi()
    {
        zhuangtai=0;
    }
    int yeshu;//記錄菜單的頁數
	int nian,tianshu;
    int id;
    int zhuangtai;
    int zhuozicai[100];
    double sum,zhengde;
	double shishou;
    void zhouzicaichushihua()
    {
		shishou=0.0;
        sum=0.0;
        zhengde=0.0;
        memset(zhuozicai,0,sizeof(zhuozicai));
    }
};
class cai
{
public:
    int id;
    char name[50];
    double a,b;
};
cai l[300];
zhuozi k[100];
class Paidui
{
public:
	int a,b;
	Paidui()
	{
		a=0;
		b=0;
	}
};
Paidui paidui;
class yuangong
{
public:
	int id;
	char name[30];
	char xingbie[5];
	int nianling;
	char zhiwei[10];
	int gongzi;
};
class Guanliyuancaozuo
{
public:
	zhuozi zi[1000];
	void guanliyuanjiemian()
	{
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");//
        outtextxy(200,50,"後臺管理");
        IMAGE img1;
        loadimage(&img1, "圖片\\按鈕金屬黃.jpg");
        putimage(150,160 , &img1);
        setcolor(BLUE);
        settextstyle(22,0,"粗體");
        outtextxy(150,160,"統計");
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
        putimage(150,220 , &img3);
        outtextxy(150,220,"修改");
		putimage(150,280 , &img3);
        outtextxy(150,280,"添加");
		putimage(150,340 , &img3);
        outtextxy(150,340,"刪除");
        IMAGE img2;
        loadimage(&img2, "圖片\\退出鍵.jpg");
        putimage(740,450 , &img2);
		MOUSEMSG m;	//定義鼠標
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				/*char s[100];
				sprintf(s,"%d",y);
				outtextxy(150,420,s);*/
				if(x>=150 && x<=207 && y>=160 && y<=190)
				{
					ifstream in("文件\\消費記錄.dat",ios::binary);//從文件中讀菜
					for(int i=1;i<=xiaofeinum;i++)
					{
						in.read((char *)&zi[i],sizeof(zi[i]));//從文件中讀菜的數量
					}
					in.close();
					tongji();
				}
				if(x>=150 && x<=207 && y>=220 && y<=250)//修改
				{
					xiugai();
				}
				if(x>=150 && x<=207 && y>=280 && y<=310)//添加
				{
					tianjia();
				}
				if(x>=150 && x<=204 && y>=340 && y<=370)//刪除
				{
					shanchu();
				}
				if(x>=740 && x<=781 && y>=450 && y<=488)//退出本程序
				{
					exit(0);
				}
			}
		}
	}
	void shanchujiemian()
	{
		closegraph();
		system("cls");
		cout<<"                     刪除系統"<<endl<<endl;
		cout<<"                     1.刪除菜的信息"<<endl;
		cout<<"                     2.刪除員工的信息"<<endl;
		cout<<"                     0.退出"<<endl;
		cout<<"                     請選擇操作"<<endl<<"                     ";
	}
	void shanchu()
	{
		shanchujiemian();
		int a;
		cin>>a;
		if(a==0)
		{
			guanliyuanjiemian();
		}
		if(a==1)
		{
			ifstream in("文件\\菜.dat",ios::binary);
			cai ll[1000];
			int i;
			for(i=1;i<=num;i++)
			{
				in.read((char *)&ll[i],sizeof(ll[i]));		
			}
			in.close();
			system("cls");
			cout<<setiosflags(ios::left)<<setw(10)<<"編號";
			cout<<setiosflags(ios::left)<<setw(15)<<"菜名";
			cout<<setiosflags(ios::left)<<setw(10)<<"售價";
			cout<<setiosflags(ios::left)<<setw(10)<<"成本價"<<endl;
			for(i=1;i<=num;i++)
			{
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].id;
				cout<<setiosflags(ios::left)<<setw(15)<<ll[i].name;
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].b;
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].a<<endl;
			}
			cout<<"請輸入刪除菜的編號(0返回)"<<endl;
			int b;
			cin>>b;
			if(b==0)
			{
				shanchu();
			}
			for(i=b;i<=num-1;i++)
			{
				ll[i]=ll[i+1];
			}
			num--;
			ofstream out("文件\\菜的數量.txt");
			out<<num;
			out.close();
			ofstream out1("文件\\菜.dat",ios::binary);
			for(i=1;i<=num;i++)
			{
				out1.write((char *)&ll[i],sizeof(ll[i]));		
			}
			out1.close();
			cout<<"刪除成功"<<endl;
			Sleep(1000);
			shanchu();
		}
		if(a==2)
		{
			ifstream in("文件\\員工.dat",ios::binary);
			yuangong yg[1000];
			for(int i=1;i<=ygnum;i++)
			{
				in.read((char *)&yg[i],sizeof(yg[i]));		
			}
			in.close();
			system("cls");
			cout<<setiosflags(ios::left)<<setw(10)<<"編號";
			cout<<setiosflags(ios::left)<<setw(10)<<"姓名";
			cout<<setiosflags(ios::left)<<setw(10)<<"性別";
			cout<<setiosflags(ios::left)<<setw(10)<<"年齡";
			cout<<setiosflags(ios::left)<<setw(10)<<"職位";
			cout<<setiosflags(ios::left)<<setw(10)<<"工資"<<endl;
			for(i=1;i<=ygnum;i++)
			{
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].id;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].name;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].xingbie;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].nianling;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].zhiwei;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].gongzi<<endl;
			}
			cout<<"請輸入刪除員工的編號(0返回)"<<endl;
			int b;
			cin>>b;
			if(b==0)
			{
				shanchu();
			}
			for(i=b;i<=ygnum-1;i++)
			{
				yg[i]=yg[i+1];
			}
			ygnum--;
			ofstream out("文件\\員工數量.txt");
			out<<ygnum;
			out.close();
			ofstream out1("文件\\員工.dat",ios::binary);
			for(i=1;i<=ygnum;i++)
			{
				out1.write((char *)&yg[i],sizeof(yg[i]));		
			}
			out1.close();
			cout<<"刪除成功"<<endl;
			Sleep(1000);
			shanchu();
		}
	}
	void tianjiajiemian()
	{
		closegraph();
		system("cls");
		cout<<"                     添加系統"<<endl<<endl;
		cout<<"                     1.添加菜的信息"<<endl;
		cout<<"                     2.添加員工的信息"<<endl;
		cout<<"                     0.退出"<<endl;
		cout<<"                     請選擇操作"<<endl<<"                     ";
	}
	void tianjia()
	{
		tianjiajiemian();
		int a;
		cin>>a;
		if(a==0)
		{
			guanliyuanjiemian();
		}
		if(a==1)
		{
			ifstream in("文件\\菜.dat",ios::binary);
			cai ll[1000];
			for(int i=1;i<=num;i++)
			{
				in.read((char *)&ll[i],sizeof(ll[i]));		
			}
			in.close();
			num++;
			ll[num].id=num;
			cout<<"請輸入菜名"<<endl;
			cin>>ll[num].name;
			cout<<"請輸入菜的成本價"<<endl;
			cin>>ll[num].a;
			cout<<"請輸入菜的售價"<<endl;
			cin>>ll[num].b;
			ofstream out1("文件\\菜.dat",ios::binary|ios::app);//從文件中讀菜
			out1.write((char *)&ll[num],sizeof(ll[num]));//從文件中讀菜的數量
			out1.close();
			ofstream out("文件\\菜的數量.txt");
			out<<num;
			out.close();
			cout<<"添加成功,已保存到文件"<<endl;
			Sleep(1000);
			tianjia();
		}
		if(a==2)
		{
			closegraph();
			system("cls");
			cout<<"                     添加員工信息"<<endl<<endl;
			cout<<"                     1.添加服務員信息"<<endl;
			cout<<"                     2.添加管理員信息"<<endl;
			cout<<"                     0.退出"<<endl;
			cout<<"                     請選擇操作"<<endl<<"                     ";
			int b;
			cin>>b;
			if(b==0)
			{
				tianjia();
			}
			if(b==1)
			{
				yuangong h;
				ygnum++;
				fwynum++;
				h.id=ygnum;
				cout<<"請輸入員工的姓名"<<endl;
				cin>>h.name;
				cout<<"請輸入員工的性別"<<endl;
				cin>>h.xingbie;
				cout<<"請輸入員工的年齡"<<endl;
				cin>>h.nianling;
				cout<<"請輸入員工的職位"<<endl;
				cin>>h.zhiwei;
				cout<<"請輸入員工的工資"<<endl;
				cin>>h.gongzi;
				cout<<"請爲該員工設置賬號"<<endl;
				cin>>fwy[fwynum].zhanghao;
				cout<<"請爲該員工設置密碼"<<endl;
				cin>>fwy[fwynum].mima;
				ofstream out2("文件\\服務員賬號密碼.dat",ios::binary|ios::app);
				out2.write((char *)&fwy[fwynum],sizeof(fwy[fwynum]));
				out2.close();
				ofstream out1("文件\\員工.dat",ios::binary|ios::app);//從文件中讀菜
				out1.write((char *)&h,sizeof(h));//從文件中讀菜的數量
				out1.close();
				ofstream out("文件\\員工數量.txt");
				out<<ygnum;
				out.close();
				ofstream out3("文件\\服務員數量.txt");
				out3<<fwynum;
				out3.close();
				cout<<"添加成功,已保存到文件"<<endl;
				cout<<ygnum<<"    "<<fwynum<<endl;
				Sleep(1000);
				tianjia();
			}
			if(b==2)
			{
				yuangong h;
				ygnum++;
				glynum++;
				h.id=ygnum;
				cout<<"請輸入員工的姓名"<<endl;
				cin>>h.name;
				cout<<"請輸入員工的性別"<<endl;
				cin>>h.xingbie;
				cout<<"請輸入員工的年齡"<<endl;
				cin>>h.nianling;
				cout<<"請輸入員工的職位"<<endl;
				cin>>h.zhiwei;
				cout<<"請輸入員工的工資"<<endl;
				cin>>h.gongzi;
				cout<<"請爲該員工設置賬號"<<endl;
				cin>>gly[glynum].zhanghao;
				cout<<"請爲該員工設置密碼"<<endl;
				cin>>gly[glynum].mima;
				ofstream out2("文件\\管理員賬號密碼.dat",ios::binary|ios::app);
				out2.write((char *)&gly[glynum],sizeof(gly[glynum]));
				out2.close();
				ofstream out1("文件\\員工.dat",ios::binary|ios::app);//從文件中讀菜
				out1.write((char *)&h,sizeof(h));//從文件中讀菜的數量
				out1.close();
				ofstream out("文件\\員工數量.txt");
				out<<ygnum;
				out.close();
				ofstream out3("文件\\管理員數量.txt");
				out3<<glynum;
				out3.close();
				cout<<"添加成功,已保存到文件"<<endl;
				Sleep(1000);
				tianjia();
			}
		}
	
	}
	void jinqiri(zhuozi zi[])
	{
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(30,0,"粗體");//
        outtextxy(60,20,"近七日");
		setcolor(BLUE);//顏色
        settextstyle(20,0,"粗體");//
		outtextxy(60,70,"時間");
		outtextxy(160,70,"營業額");
		outtextxy(280,70,"利潤");
		settextstyle(16,0,"粗體");//
		//MonthDay(year,yearDay,&month,&day);
		int top=1,i;
		int d=zi[xiaofeinum].tianshu-7;
		node q[1000];
		for(i=0;i<10;i++)
		{
			q[i].sum1=0;
			q[i].sum2=0;
		}
		for(i=xiaofeinum;i>0;i--)
		{
			if(zi[i].tianshu>d)
			{
				q[zi[i].tianshu-d].sum1+=zi[i].zhengde;
				q[zi[i].tianshu-d].sum2+=zi[i].sum;
				q[zi[i].tianshu-d].id=zi[i].nian;
				q[zi[i].tianshu-d].tianshu=zi[i].tianshu;
			}
			else
			{
				break;
			}
		}
		char s[20];
		int year,yearDay,month,day;
		double aa=0,bb=0;
		for(i=1;i<=7;i++)
		{
			aa+=q[i].sum1;
			bb+=q[i].sum2;
			year=q[i].id;
			yearDay=q[i].tianshu;
			MonthDay(year,yearDay,&month,&day);
			sprintf(s,"%d-",year);
			outtextxy(60,100+(i-1)*20,s);
			sprintf(s,"%d-",month);
			outtextxy(100,100+(i-1)*20,s);
			sprintf(s,"%d",day);
			outtextxy(118,100+(i-1)*20,s);
			sprintf(s,"%.1lf",q[i].sum2);
			outtextxy(180,100+(i-1)*20,s);
			sprintf(s,"%.1lf",q[i].sum1);
			outtextxy(280,100+(i-1)*20,s);
			
		}
		setcolor(RED);//顏色
        settextstyle(20,0,"粗體");//
		outtextxy(60,250,"合計:");
		sprintf(s,"%.1lf",bb);
		outtextxy(180,250,s);
		sprintf(s,"%.1lf",aa);
		outtextxy(280,250,s);
		IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
		settextstyle(25,0,"粗體");//
        putimage(250,400 , &img3);
		outtextxy(250,400,"返回");
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				/*char s[100];
				sprintf(s,"%d",x);
				outtextxy(150,420,s);*/
				if(x>=250 && x<=305 && y>=400 && y<=430)
				{
					tongji();
				}
			}
		}
	}
	void jinsanshiri(zhuozi zi[])
	{
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(30,0,"粗體");//
        outtextxy(60,20,"近三十日");
		
		//MonthDay(year,yearDay,&month,&day);
		int top=1,i;
		int d=zi[xiaofeinum].tianshu-30;
		node q[1000];
		for(i=0;i<40;i++)
		{
			q[i].sum1=0;
			q[i].sum2=0;
		}
		double aa=0,bb=0;
		for(i=xiaofeinum;i>0;i--)
		{
			if(zi[i].tianshu>d)
			{
				aa+=zi[i].zhengde;
				bb+=zi[i].sum;
			}
			else
			{
				break;
			}
		}
		char s[20];
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");//
		outtextxy(60,150,"近三十天營業額:");
		sprintf(s,"%.1lf",bb);
		outtextxy(250,150,s);
		outtextxy(60,200,"近三十天利潤:");
		sprintf(s,"%.1lf",aa);
		outtextxy(230,200,s);
		IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
		settextstyle(25,0,"粗體");//
        putimage(250,400 , &img3);
		outtextxy(250,400,"返回");
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				if(x>=250 && x<=305 && y>=400 && y<=430)
				{
					tongji();
				}
			}
		}
	}
	void dangri(zhuozi zi[])
	{
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(30,0,"粗體");//
        outtextxy(60,20,"當日");
		
		//MonthDay(year,yearDay,&month,&day);
		int top=1,i;
		int d=zi[xiaofeinum].tianshu;
		node q[1000];
		for(i=0;i<40;i++)
		{
			q[i].sum1=0;
			q[i].sum2=0;
		}
		double aa=0,bb=0;
		for(i=xiaofeinum;i>0;i--)
		{
			if(zi[i].tianshu==d)
			{
				aa+=zi[i].zhengde;
				bb+=zi[i].sum;
			}
			else
			{
				break;
			}
		}
		char s[20];
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");//
		outtextxy(60,150,"當天營業額:");
		sprintf(s,"%.1lf",bb);
		outtextxy(210,150,s);
		outtextxy(60,200,"當天利潤:");
		sprintf(s,"%.1lf",aa);
		outtextxy(190,200,s);
		IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
		settextstyle(25,0,"粗體");//
        putimage(250,400 , &img3);
		outtextxy(250,400,"返回");
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				if(x>=250 && x<=305 && y>=400 && y<=430)
				{
					tongji();
				}
			}
		}
	}
	void quanbu(zhuozi zi[])
	{
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(30,0,"粗體");//
        outtextxy(60,20,"當日");
		
		//MonthDay(year,yearDay,&month,&day);
		int i;
		double aa=0,bb=0;
		for(i=xiaofeinum;i>0;i--)
		{
			
				aa+=zi[i].zhengde;
				bb+=zi[i].sum;
		}
		char s[20];
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");//
		outtextxy(60,150,"開店總營業額:");
		sprintf(s,"%.1lf",bb);
		outtextxy(230,150,s);
		outtextxy(60,200,"開店總利潤:");
		sprintf(s,"%.1lf",aa);
		outtextxy(210,200,s);
		IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
		settextstyle(25,0,"粗體");//
        putimage(250,400 , &img3);
		outtextxy(250,400,"返回");
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				if(x>=250 && x<=305 && y>=400 && y<=430)
				{
					tongji();
				}
			}
		}
	}
	void tongji()
	{
		int i;
		initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");//
        outtextxy(200,40,"統計信息");
        IMAGE img1;
        loadimage(&img1, "圖片\\按鈕黃.jpg");
        putimage(150,160 , &img1);
        setcolor(BLUE);
        settextstyle(25,0,"粗體");
        outtextxy(150,160,"近七日");
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕黃.jpg");
        putimage(150,220 , &img3);
		putimage(150,100 , &img3);
		outtextxy(150,100,"當日");
        outtextxy(150,220,"近三十日");
		putimage(150,280 , &img3);
        outtextxy(150,280,"全部統計");
		IMAGE img7;
        loadimage(&img7, "圖片\\按鈕金屬黃.jpg");
        putimage(150,340 , &img7);
        outtextxy(150,340,"返回");
		MOUSEMSG m;	//定義鼠標
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				char s[100];
				sprintf(s,"%d",y);
				outtextxy(150,420,s);
				if(x>=151 && x<=260 && y>=100 && y<=130)
				{
					dangri(zi);
				}
				if(x>=151 && x<=260 && y>=160 && y<=192)//近7日
				{
					jinqiri(zi);
				}
				if(x>=151 && x<=286 && y>=220 && y<=250)//近30日
				{
					jinsanshiri(zi);
				}
				if(x>=151 && x<=286 && y>=280 && y<=310)//全部
				{
					quanbu(zi);
				}
				if(x>=150 && x<=206 && y>=340 && y<=370)
				{
					guanliyuanjiemian();
				}
			}
		}
	}
	void xiugai()
	{
		closegraph();
		system("cls");
		xiugaijiemian();
	}
	void xiugaijiemian()
	{
		cout<<"                     修改系統"<<endl<<endl;
		cout<<"                     1.修改菜的信息"<<endl;
		cout<<"                     2.修改員工的信息"<<endl;
		cout<<"                     0.退出"<<endl;
		cout<<"                     請選擇操作"<<endl<<"                     ";
		xiugaicaozuo();
	}
	void xiugaijia(cai ll[])
	{
		int b;
		cout<<"請輸入要修改菜的編號(0返回)"<<endl;
		cin>>b;
		if(b==0)
		{
			system("cls");
			xiugaijiemian();
		}
		if(b<1 || b>num)
		{
			cout<<"                     輸入錯誤"<<endl;
			xiugaijia(ll);
		}
		cout<<"請輸入成本價"<<endl;
		cin>>ll[b].a;
		cout<<"請輸入售價"<<endl;
		cin>>ll[b].b;
		ofstream in("文件\\菜.dat",ios::binary);
		for(int i=1;i<=num;i++)
		{
			in.write((char *)&ll[i],sizeof(ll[i]));		
		}
		in.close();
		cout<<"修改成功,已保存到文件"<<endl;
		Sleep(1000);
		system("cls");
		xiugaijiemian();
	}
	void xiugaiyuangong(yuangong yg[])
	{
		int b;
		cout<<"請輸入要修改員工的編號(0返回)"<<endl;
		cin>>b;
		if(b==0)
		{
			system("cls");
			xiugaijiemian();
		}
		if(b<1 || b>ygnum)
		{
			cout<<"                     輸入錯誤"<<endl;
			xiugaiyuangong(yg);
		}
		cout<<"請輸入員工年齡"<<endl;
		cin>>yg[b].nianling;
		cout<<"請輸入員工職位"<<endl;
		cin>>yg[b].zhiwei;
		cout<<"請輸入員工工資"<<endl;
		cin>>yg[b].gongzi;
		ofstream in("文件\\員工.dat",ios::binary);
		for(int i=1;i<=ygnum;i++)
		{
			in.write((char *)&yg[i],sizeof(yg[i]));		
		}
		in.close();
		cout<<"修改成功,已保存到文件"<<endl;
		Sleep(1000);
		system("cls");
		xiugaijiemian();
	}
	void xiugaicaozuo()
	{
		int a;
		cin>>a;
		if(a==1)
		{
			ifstream in("文件\\菜.dat",ios::binary);
			cai ll[1000];
			for(int i=1;i<=num;i++)
			{
				in.read((char *)&ll[i],sizeof(ll[i]));		
			}
			in.close();
			system("cls");
			cout<<setiosflags(ios::left)<<setw(10)<<"編號";
			cout<<setiosflags(ios::left)<<setw(15)<<"菜名";
			cout<<setiosflags(ios::left)<<setw(10)<<"售價";
			cout<<setiosflags(ios::left)<<setw(10)<<"成本價"<<endl;
			for(i=1;i<=num;i++)
			{
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].id;
				cout<<setiosflags(ios::left)<<setw(15)<<ll[i].name;
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].b;
				cout<<setiosflags(ios::left)<<setw(10)<<ll[i].a<<endl;
			}
			xiugaijia(ll);
		}
		if(a==2)
		{
			ifstream in("文件\\員工.dat",ios::binary);
			yuangong yg[1000];
			for(int i=1;i<=ygnum;i++)
			{
				in.read((char *)&yg[i],sizeof(yg[i]));		
			}
			in.close();
			system("cls");
			cout<<setiosflags(ios::left)<<setw(10)<<"編號";
			cout<<setiosflags(ios::left)<<setw(10)<<"姓名";
			cout<<setiosflags(ios::left)<<setw(10)<<"性別";
			cout<<setiosflags(ios::left)<<setw(10)<<"年齡";
			cout<<setiosflags(ios::left)<<setw(10)<<"職位";
			cout<<setiosflags(ios::left)<<setw(10)<<"工資"<<endl;
			for(i=1;i<=ygnum;i++)
			{
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].id;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].name;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].xingbie;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].nianling;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].zhiwei;
				cout<<setiosflags(ios::left)<<setw(10)<<yg[i].gongzi<<endl;
			}
			xiugaiyuangong(yg);
		}
		if(a==0)
		{
			guanliyuanjiemian();
		}
	
	}





};
Guanliyuancaozuo g;

class diancai
{
public:
	void baocun(int ll,int p)
	{
		int i;
		if(k[ll].sum>0)
		{
			k[ll].zhuangtai=1;//改變桌子的狀態
		}
		IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
		if(p==1)
		{
        outtextxy(60,100,"點菜成功!");
        }
		else
		{
		 outtextxy(60,100,"補菜成功!");
		}
		settextstyle(25,0,"粗體");
		char s[20];
		sprintf(s,"共計 %.1lf 元.",k[ll].sum);
		outtextxy(60,150,s);
		IMAGE img2;	// 定義 IMAGE 對象
        loadimage(&img2, "圖片\\按鈕黃.jpg");	// 讀取圖片到 img 對象中
        putimage(80, 250, &img2);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		setcolor(BLUE);//顏色
        settextstyle(22,0,"粗體");
		outtextxy(80,250,"返回主界面");
		MOUSEMSG m;	//定義鼠標
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				/*char s[100];
				sprintf(s,"%d",y);
				outtextxy(150,420,s);*/
				if(x>=81 && x<=189 && y>=250 && y<=282)
				{
					diancaijiemain();
				}	
			}
		}
	}
	void jiaohao()
	{
		paidui.b++;
		IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"叫號成功");
        settextstyle(25,0,"粗體");
		char s[10];
		sprintf(s,"當前編號:%d",paidui.b);
		outtextxy(60,100,s);
		sprintf(s,"前面還有 %d 人排隊",(paidui.b-paidui.a-1));
		outtextxy(60,150,s);
		IMAGE img4;
        loadimage(&img4, "圖片\\按鈕金屬黃.jpg");
        putimage(60,320 , &img4);
		outtextxy(60,320,"返回");
		MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標  
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y; 
					/*char s[100];
                	sprintf(s,"%d",y);
                	outtextxy(150,420,s);*/
				if(x>=60 && x<=114 && y>=320 && y<=349)
				{
					 paidui1();
				}
            }
        }
	
	}
	void shanhao()
	{
		paidui.a++;
		IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"刪號成功");
        settextstyle(25,0,"粗體");
		char s[10];
		sprintf(s,"還有 %d 人排隊",(paidui.b-paidui.a));
		outtextxy(60,150,s);
		IMAGE img4;
        loadimage(&img4, "圖片\\按鈕金屬黃.jpg");
        putimage(60,320 , &img4);
		outtextxy(60,320,"返回");
		MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標  
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y; 
					/*char s[100];
                	sprintf(s,"%d",y);
                	outtextxy(150,420,s);*/
				if(x>=60 && x<=114 && y>=320 && y<=349)
				{
					 paidui1();
				}
            }
        }
	
	}
	void paidui1()
	{
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"排隊情況");
        settextstyle(25,0,"粗體");
		char s[10];
		sprintf(s,"當前排隊人數:%d",(paidui.b-paidui.a));
		outtextxy(60,100,s);
		sprintf(s,"%d — %d",paidui.a,paidui.b);
		outtextxy(65,140,s);
		IMAGE img1;
        loadimage(&img1, "圖片\\按鈕金屬黃.jpg");
        putimage(60,200 , &img1);
        setcolor(BLUE);
        settextstyle(25,0,"粗體");
        outtextxy(60,200,"叫號");
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
        putimage(60,255 , &img3);
        outtextxy(60,255,"刪號");
		IMAGE img4;
        loadimage(&img4, "圖片\\按鈕金屬黃.jpg");
        putimage(60,320 , &img4);
		outtextxy(60,320,"返回");
		MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標  
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y; 
					/*char s[100];
                	sprintf(s,"%d",y);
                	outtextxy(150,420,s);*/
				if(x>=60 && x<=114 && y>=320 && y<=349)
				{
					 diancaijiemain();
				}
				if(x>=60 && x<=114 && y>=200 && y<=229)
				{
					 jiaohao();
				}
				if(x>=60 && x<=114 && y>=255 && y<=284)
				{
					shanhao(); 
				}

            }
        }

	}
    void diancaijiemain()
    {
        initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"桌臺使用情況");
        settextstyle(25,0,"粗體");
        outtextxy(300,40,"(紅:使用中 綠:未使用)");
        setcolor(BLUE);
        outtextxy(20,80,"雙人桌");
		IMAGE img5;	// 定義 IMAGE 對象
        loadimage(&img5, "圖片\\按鈕金屬黃.jpg");
		putimage(400,450, &img5);
		outtextxy(400,450,"排隊");
        int i,j;
        IMAGE img2;	// 定義 IMAGE 對象
        loadimage(&img2, "圖片\\桌子紅.jpg");
        IMAGE img1;	// 定義 IMAGE 對象
        loadimage(&img1, "圖片\\桌子綠.jpg");

        for(j=0; j<=1; j++)
        {
            for(i=1; i<=4; i++)
            {
                if(k[i+j*4].zhuangtai==0)
                {
                    putimage(20+(i-1)*100, 130+j*50, &img1);
                }
                else
                {
                    putimage(20+(i-1)*100, 130+j*50, &img2);
                }
            }
        }
        outtextxy(20,220,"四人桌");
        for(j=0; j<=1; j++)
        {
            for(i=1; i<=4; i++)
            {
                if(k[i+(j+2)*4].zhuangtai==0)
                {
                    putimage(20+(i-1)*100, 270+j*50, &img1);
                }
                else
                {
                    putimage(20+(i-1)*100, 270+j*50, &img2);
                }
            }
        }
        outtextxy(20,360,"多人桌");
        for(i=1; i<=4; i++)
        {
            if(k[i+16].zhuangtai==0)
            {
                putimage(20+(i-1)*100, 410, &img1);
            }
            else
            {
                putimage(20+(i-1)*100, 410, &img2);
            }
        }
        diancai1();
    }
    void diancai1()
    {
        MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標  
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
                int l=zhuanhua(x,y);//l是第幾桌
					/*char s[100];
                	sprintf(s,"%d",y);
                	outtextxy(150,420,s);*/
				if(x>=400 && x<=454 && y>=450 && y<=480)
				{
					paidui1();
				}
				if(l!=0)
				{
					if(k[l].zhuangtai==0)
					{
						k[l].zhouzicaichushihua();
						diancaidiyiye(l,1);
						//jiezhang();
					}
					else
					{
						jiezhang(l);
					}
				}

            }
        }
    }
    void shuchu(int i,int x,int y,int ll)
    {
		if(k[ll].zhuozicai[i]==1){setcolor(GREEN);}
		else{setcolor(BLUE);}
        settextstyle(20,0,"粗體");
        char s[10];
        sprintf(s,"%d",l[i].id);
        outtextxy(x,y,s);
        outtextxy(x+25,y,l[i].name);
        sprintf(s,"¥%0.1lf",l[i].b);
        outtextxy(x+155,y,s);

    }
	void fapiao(int ll,double d)
	{
		time_t nowtime;  
        struct tm *timeinfo;  
 		time( &nowtime );  
 		timeinfo = localtime( &nowtime );  
		int xtn = timeinfo->tm_year + 1900;  //年
 		int xty = timeinfo->tm_mon + 1;  //月
 		int xtr = timeinfo->tm_mday;  //日
		int xts = timeinfo->tm_hour;//時
		int xtf = timeinfo->tm_min;//分
		int xtm = timeinfo->tm_sec;
		setcolor(BLUE);//顏色
        settextstyle(13,0,"粗體");
		char s[20];
		sprintf(s,"%d/",xtn);
		outtextxy(30,80,s);
		sprintf(s,"%d/",xty);
		outtextxy(65,80,s);
		sprintf(s,"%d",xtr);
		outtextxy(80,80,s);
		sprintf(s,"%d:",xts);
		outtextxy(95,80,s);
		sprintf(s,"%d:",xtf);
		outtextxy(115,80,s);
		sprintf(s,"%d",xtm);
		outtextxy(135,80,s);

		int j=0;
		for(int i=1;i<=num;i++)
		{
			if(k[ll].zhuozicai[i]==1)
			{
				outtextxy(30,100+j*17,l[i].name);
				char ss[20];
				sprintf(ss,"%.1lf",l[i].b);
				outtextxy(30,100+j*17,l[i].name);
				outtextxy(120,100+j*17,ss);
				j++;
				if(j==18)
				{
					break;
				}
			}
		}
		for(;i<=num;i++)
		{
			if(k[ll].zhuozicai[i]==1)
			{
				char ss[20];
				sprintf(ss,"%.1lf",l[i].b);
				outtextxy(290,100+(j-18)*20,ss);
				outtextxy(200,100+(j-18)*20,l[i].name);
				j++;
			}
		}

		settextstyle(15,0,"粗體");
		char ss[20];
		sprintf(ss,"%.1lf",d);
		outtextxy(70,420,ss);
		outtextxy(30,420,"實收:");
		sprintf(ss,"%.1lf",(d-k[ll].sum));
		outtextxy(170,420,ss);
		outtextxy(130,420,"找零:");
		outtextxy(230,420,"消費:");
		sprintf(ss,"%.1lf",k[ll].sum);
		outtextxy(270,420,ss);
	}
	/*void dangeshuru()
	{
		char h[100],c;
		char ss[100];
		int i=0;
		while(c=getchar()!='\n')
		{
			ss[i++]=c;
			ss[i]='\0';
			IMAGE img4;	// 定義 IMAGE 對象
			loadimage(&img4, "圖片\\空白條短.jpg");	// 讀取圖片到 img 對象中
			putimage(250,50, &img4);
			outtextxy(255,50,ss);
		}
	
	
	}*/
	void zhenjiezhang(int ll)
	{	
		k[ll].zhuangtai=0;//改變桌子的狀態
		IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(BLUE);//顏色
        settextstyle(25,0,"粗體");
		char s[20];
		sprintf(s,"您一共消費 %.1lf 元.",k[ll].sum);
		outtextxy(60,20,s);
		IMAGE img2;	// 定義 IMAGE 對象
        loadimage(&img2, "圖片\\按鈕黃.jpg");	// 讀取圖片到 img 對象中
        putimage(80, 450, &img2);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		outtextxy(60,50,"請輸入實收金額:");
		setcolor(RED);//顏色
		settextstyle(22,0,"粗體");
		outtextxy(80,450,"返回主界面");
		IMAGE img4;	// 定義 IMAGE 對象
        loadimage(&img4, "圖片\\空白條短.jpg");	// 讀取圖片到 img 對象中
        putimage(250,50, &img4);
		time_t nowtime;  
            struct tm *timeinfo;  
 			time( &nowtime );  
 			timeinfo = localtime( &nowtime );  
  
 			int xtn = timeinfo->tm_year + 1900;  
 			int xty = timeinfo->tm_mon + 1;  
 			int xtr = timeinfo->tm_mday;
		double d;
		cin>>d;
		k[ll].shishou=d;
		k[ll].nian=xtn;
		k[ll].tianshu=sj.star(xtn,xty,xtr);
		double sum=0;
		for(int i=1;i<=num;i++)
		{
			if(k[ll].zhuozicai[i])
			{
				sum+=l[i].a;
			}
		}
		k[ll].zhengde=k[ll].sum-sum;
		if(d>=k[ll].sum)
		{
			char ss[30];
			sprintf(ss,"%.1lf",d);
			outtextxy(255,50,ss);
			xiaofeinum++;
			k[ll].id=xiaofeinum;
			ofstream out("文件\\消費記錄.dat",ios::binary|ios::app);
			out.write((char *)&k[ll],sizeof(k[ll]));
			out.close();
			ofstream out1("文件\\消費記錄數量.txt");
			out1<<xiaofeinum;
			out1.close();
		}
		else
		{
			char ss[30];
			sprintf(ss,"%.1lf",d);
			outtextxy(255,50,ss);
			outtextxy(80,200,"輸入錯誤,請重新輸入金額");
			Sleep(1000);
			zhenjiezhang(ll);
		}
		fapiao(ll,d);
		MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
               /*char s[100];
                sprintf(s,"%d",x);
                outtextxy(400,420,s);*/
				if(x>=80 && x<=189 && y>=450 && y<=482)
				{
					diancaijiemain();
				}
            }
        }
	}
	void jiezhang(int ll)
	{
		IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");//
        outtextxy(100,50,"請選擇功能");
        IMAGE img1;
        loadimage(&img1, "圖片\\按鈕金屬黃.jpg");
        putimage(150,160 , &img1);
        setcolor(BLUE);
        settextstyle(22,0,"粗體");
        outtextxy(150,160,"結賬");
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
        putimage(150,220 , &img3);
        outtextxy(150,220,"補菜");
		putimage(150,280 , &img3);
		outtextxy(150,280,"返回");
		MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
                /*char s[100];
                sprintf(s,"%d",y);
                outtextxy(150,420,s);*/
				if(x>=150 && x<=205 && y>=150 && y<=190)//結賬
				{
					zhenjiezhang(ll);
				}
       
				if(x>=150 && x<=205 && y>=220 && y<=250)//補菜
				{
					diancaidiyiye(ll,2);
				}

				if(x>=150 && x<=205 && y>=280 && y<=310)
				{
					diancaijiemain();
				}
				
            }
        }
	}
    void diancaidiyiye(int l,int p)//p==1  點菜  p==2  補菜
    {
        k[l].yeshu=1;
        //k[l].zhouzicaichushihua();
        //initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"菜單");
        settextstyle(25,0,"粗體");
        outtextxy(25,80,"爽口涼菜");
        outtextxy(25,210,"經典熱菜");
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
		outtextxy(370,450,"合計:");
		IMAGE img4;	// 定義 IMAGE 對象
		loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
		putimage(570, 450, &img4);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		outtextxy(570,450,"保存");
        IMAGE img2;	// 定義 IMAGE 對象
        loadimage(&img2, "圖片\\箭頭下.jpg");	// 讀取圖片到 img 對象中
        putimage(251,450, &img2);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        //shuchu(1,25,120);
        int i;
        for(i=1; i<=4; i++)
        {
            shuchu(i,25,120+20*(i-1),l);
        }
        for(i=5; i<=14; i++)
        {
            shuchu(i,25,120+20*(i+1),l);
        }
		shuaping(l,1);
        MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
                /*char s[100];
                sprintf(s,"%d",y);
                outtextxy(150,420,s);
                */
				if(x>=29 && x<=233)
                {
                    if(y>=121 && y<=138)
                    {
						if(p==1)
						{
							if(k[l].zhuozicai[1]){k[l].zhuozicai[1]=0;}
							else {k[l].zhuozicai[1]=1;}
						}
						else
						{
							if(!k[l].zhuozicai[1]){k[l].zhuozicai[1]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=141 && y<=158)
                    {
						if(p==1)
						{
							if(k[l].zhuozicai[2]){k[l].zhuozicai[2]=0;}
							else {k[l].zhuozicai[2]=1;}
						}
						else
						{
							if(!k[l].zhuozicai[2]){k[l].zhuozicai[1]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=161 && y<=178)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[3]){k[l].zhuozicai[3]=0;}
						else {k[l].zhuozicai[3]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[3]){k[l].zhuozicai[3]=1;}
						}
						shuaping(l,1);
                    }
                    if(y>=181 && y<=198)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[4]){k[l].zhuozicai[4]=0;}
						else {k[l].zhuozicai[4]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[4]){k[l].zhuozicai[4]=1;}
						}
                        shuaping(l,1);
                    }
                    //	if(y>=201 && y<=218){outtextxy(260,201,"√");}
                    //	if(y>=221 && y<=238){outtextxy(260,221,"√");}
                    if(y>=241 && y<=258)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[5]){k[l].zhuozicai[5]=0;}
						else {k[l].zhuozicai[5]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[5]){k[l].zhuozicai[5]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=261 && y<=278)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[6]){k[l].zhuozicai[6]=0;}
						else {k[l].zhuozicai[6]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[6]){k[l].zhuozicai[6]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=281 && y<=298)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[7]){k[l].zhuozicai[7]=0;}
						else {k[l].zhuozicai[7]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[7]){k[l].zhuozicai[7]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=301 && y<=318)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[8]){k[l].zhuozicai[8]=0;}
						else {k[l].zhuozicai[8]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[8]){k[l].zhuozicai[8]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=321 && y<=338)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[9]){k[l].zhuozicai[9]=0;}
						else {k[l].zhuozicai[9]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[9]){k[l].zhuozicai[9]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=341 && y<=358)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[10]){k[l].zhuozicai[10]=0;}
						else {k[l].zhuozicai[10]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[10]){k[l].zhuozicai[10]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=361 && y<=378)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[11]){k[l].zhuozicai[11]=0;}
						else {k[l].zhuozicai[11]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[11]){k[l].zhuozicai[11]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=381 && y<=398)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[12]){k[l].zhuozicai[12]=0;}
						else {k[l].zhuozicai[12]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[12]){k[l].zhuozicai[12]=1;}
						}
                       shuaping(l,1);
                    }
                    if(y>=401 && y<=418)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[13]){k[l].zhuozicai[13]=0;}
						else {k[l].zhuozicai[13]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[13]){k[l].zhuozicai[13]=1;}
						}
                        shuaping(l,1);
                    }
                    if(y>=421 && y<=438)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[14]){k[l].zhuozicai[14]=0;}
						else {k[l].zhuozicai[14]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[14]){k[l].zhuozicai[14]=1;}
						}
                        shuaping(l,1);
                    }
                }

                if(x>=251 && x<=291 && y>=450 && y<=481)//下一頁
                {
                    diancaidierye(l,p);
                }
				if(x>=575 && x<=618 && y>=451 && y<=471)
				{
					baocun(l,p);
				}
            }
        }

    }
	void diancaidierye(int l,int p)
	{
		k[l].yeshu=2;
		IMAGE img;	// 定義 IMAGE 對象
		loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
		putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		setbkmode(TRANSPARENT);//背景透明
		setcolor(RED);//顏色
		settextstyle(40,0,"粗體");
		outtextxy(60,25,"菜單");
		settextstyle(25,0,"粗體");
		outtextxy(25,80,"經典熱菜");
		outtextxy(25,225,"副食類");
		setcolor(RED);//顏色
		settextstyle(25,0,"粗體");
		outtextxy(370,450,"合計:");
		IMAGE img4;	// 定義 IMAGE 對象
		loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
		putimage(570, 450, &img4);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		outtextxy(570,450,"保存");
		int i;
		for(i=1; i<=5; i++)
		{
			shuchu(i+14,25,120+20*(i-1),l);
		}
		for(i=6; i<=14; i++)
		{
			shuchu(i+14,25,120+20*(i+1),l);
		}
		IMAGE img2;
		loadimage(&img2, "圖片\\箭頭下.jpg");
		putimage(251,450, &img2);
		IMAGE img3;
		loadimage(&img3, "圖片\\箭頭上.jpg");
		putimage(150,450, &img3);
		shuaping(l,2);
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				/*char s[100];
            		sprintf(s,"%d",x);
            		outtextxy(150,420,s);*/

			if(x>=29 && x<=233)
                {
                    if(y>=121 && y<=138)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[15]){k[l].zhuozicai[15]=0;}
						else {k[l].zhuozicai[15]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[15]){k[l].zhuozicai[15]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=141 && y<=158)
                    {
					if(p==1)
						{
						if(k[l].zhuozicai[16]){k[l].zhuozicai[16]=0;}
						else {k[l].zhuozicai[16]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[16]){k[l].zhuozicai[16]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=161 && y<=178)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[17]){k[l].zhuozicai[17]=0;}
						else {k[l].zhuozicai[17]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[17]){k[l].zhuozicai[17]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=181 && y<=198)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[18]){k[l].zhuozicai[18]=0;}
						else {k[l].zhuozicai[18]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[18]){k[l].zhuozicai[18]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=201 && y<=218){
						if(p==1)
						{
						if(k[l].zhuozicai[19]){k[l].zhuozicai[19]=0;}
						else {k[l].zhuozicai[19]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[19]){k[l].zhuozicai[19]=1;}
						}
                        shuaping(l,2);
						}
                    //	if(y>=221 && y<=238){outtextxy(260,221,"√");}
                    //if(y>=241 && y<=258)
                    //{
					//	if(k[l].zhuozicai[5]){k[l].zhuozicai[5]=0;}
					//	else {k[l].zhuozicai[5]=1;}
                     //   shuaping(l,1);
                    //}
                    if(y>=261 && y<=278)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[20]){k[l].zhuozicai[20]=0;}
						else {k[l].zhuozicai[20]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[20]){k[l].zhuozicai[20]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=281 && y<=298)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[21]){k[l].zhuozicai[21]=0;}
						else {k[l].zhuozicai[21]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[21]){k[l].zhuozicai[21]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=301 && y<=318)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[22]){k[l].zhuozicai[22]=0;}
						else {k[l].zhuozicai[22]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[22]){k[l].zhuozicai[22]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=321 && y<=338)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[23]){k[l].zhuozicai[23]=0;}
						else {k[l].zhuozicai[23]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[23]){k[l].zhuozicai[23]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=341 && y<=358)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[24]){k[l].zhuozicai[24]=0;}
						else {k[l].zhuozicai[24]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[24]){k[l].zhuozicai[24]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=361 && y<=378)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[25]){k[l].zhuozicai[25]=0;}
						else {k[l].zhuozicai[25]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[25]){k[l].zhuozicai[25]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=381 && y<=398)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[26]){k[l].zhuozicai[26]=0;}
						else {k[l].zhuozicai[26]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[26]){k[l].zhuozicai[26]=1;}
						}
                       shuaping(l,2);
                    }
                    if(y>=401 && y<=418)
                    {
					if(p==1)
						{
						if(k[l].zhuozicai[27]){k[l].zhuozicai[27]=0;}
						else {k[l].zhuozicai[27]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[27]){k[l].zhuozicai[27]=1;}
						}
                        shuaping(l,2);
                    }
                    if(y>=421 && y<=438)
                    {
					if(p==1)
						{
						if(k[l].zhuozicai[28]){k[l].zhuozicai[28]=0;}
						else {k[l].zhuozicai[28]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[28]){k[l].zhuozicai[28]=1;}
						}
                        shuaping(l,2);
                    }
                }
				if(x>=150 && x<=190 && y>=450 && y<=481)//上一頁
				{
					diancaidiyiye(l,p);
				}
				if(x>=251 && x<=291 && y>=450 && y<=481)//第二頁的下一頁
				{
					diancaidisanye(l,p);
				}
				if(x>=575 && x<=618 && y>=451 && y<=471)
				{
					baocun(l,p);
				}
			}
			
		}
	}
    void diancaidisanye(int l,int p)
    {
        k[l].yeshu=3;
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"菜單");
        settextstyle(25,0,"粗體");
        outtextxy(25,80,"副食類");
        outtextxy(25,185,"新增特色類");
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
		outtextxy(370,450,"合計:");
		IMAGE img4;	// 定義 IMAGE 對象
		loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
		putimage(570, 450, &img4);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		outtextxy(570,450,"保存");
        IMAGE img3;
        loadimage(&img3, "圖片\\箭頭上.jpg");
        putimage(150,450, &img3);
		int i;
        for(i=1; i<=3; i++)
        {
            shuchu(i+28,25,120+20*(i-1),l);
        }
        for(i=4; i<=(num-28); i++)
        {
            shuchu(i+28,25,120+20*(i+1),l);
        }
		shuaping(l,3);
		MOUSEMSG m;
		while(1)
		{
			m = GetMouseMsg();//獲取鼠標
			if(m.uMsg==WM_LBUTTONUP)//左鍵
			{
				int x=m.x;
				int y=m.y;
				/*char s[100];
            		sprintf(s,"%d",x);
            		outtextxy(150,420,s);*/
				if(x>=29 && x<=233)
                {
                    if(y>=121 && y<=138)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[29]){k[l].zhuozicai[29]=0;}
						else {k[l].zhuozicai[29]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[29]){k[l].zhuozicai[29]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=141 && y<=158)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[30]){k[l].zhuozicai[30]=0;}
						else {k[l].zhuozicai[30]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[30]){k[l].zhuozicai[30]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=161 && y<=178)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[31]){k[l].zhuozicai[31]=0;}
						else {k[l].zhuozicai[31]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[31]){k[l].zhuozicai[31]=1;}
						}
                        shuaping(l,3);
                    }
                    //if(y>=181 && y<=198)
                   // {
					//	if(k[l].zhuozicai[18]){k[l].zhuozicai[18]=0;}
					//	else {k[l].zhuozicai[18]=1;}
                      //  shuaping(l,1);
                    //}
                    /*if(y>=201 && y<=218){
						if(k[l].zhuozicai[19]){k[l].zhuozicai[19]=0;}
						else {k[l].zhuozicai[19]=1;}
                        shuaping(l,1);
						}*/
                    if(y>=221 && y<=238)
					{
						if(p==1)
						{
						if(k[l].zhuozicai[32]){k[l].zhuozicai[32]=0;}
						else {k[l].zhuozicai[32]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[32]){k[l].zhuozicai[32]=1;}
						}
                        shuaping(l,3);
					}
                    if(y>=241 && y<=258)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[33]){k[l].zhuozicai[33]=0;}
						else {k[l].zhuozicai[33]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[33]){k[l].zhuozicai[33]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=261 && y<=278)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[34]){k[l].zhuozicai[34]=0;}
						else {k[l].zhuozicai[34]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[34]){k[l].zhuozicai[34]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=281 && y<=298)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[35]){k[l].zhuozicai[35]=0;}
						else {k[l].zhuozicai[35]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[35]){k[l].zhuozicai[35]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=301 && y<=318)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[36]){k[l].zhuozicai[36]=0;}
						else {k[l].zhuozicai[36]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[36]){k[l].zhuozicai[36]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=321 && y<=338)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[37]){k[l].zhuozicai[37]=0;}
						else {k[l].zhuozicai[37]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[37]){k[l].zhuozicai[37]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=341 && y<=358)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[38]){k[l].zhuozicai[38]=0;}
						else {k[l].zhuozicai[38]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[38]){k[l].zhuozicai[38]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=361 && y<=378)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[39]){k[l].zhuozicai[39]=0;}
						else {k[l].zhuozicai[39]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[39]){k[l].zhuozicai[39]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=381 && y<=398)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[40]){k[l].zhuozicai[40]=0;}
						else {k[l].zhuozicai[40]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[40]){k[l].zhuozicai[40]=1;}
						}
                       shuaping(l,3);
                    }
                    if(y>=401 && y<=418)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[41]){k[l].zhuozicai[41]=0;}
						else {k[l].zhuozicai[41]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[41]){k[l].zhuozicai[41]=1;}
						}
                        shuaping(l,3);
                    }
                    if(y>=421 && y<=438)
                    {
						if(p==1)
						{
						if(k[l].zhuozicai[42]){k[l].zhuozicai[42]=0;}
						else {k[l].zhuozicai[42]=1;}
                        }
						else
						{
							if(!k[l].zhuozicai[42]){k[l].zhuozicai[42]=1;}
						}
                        shuaping(l,3);
                    }
                }
				if(x>=150 && x<=190 && y>=450 && y<=481)//上一頁
				{
					diancaidierye(l,p);
				}
				if(x>=575 && x<=618 && y>=451 && y<=471)
				{
					baocun(l,p);
				}
			}
		}
    }
	void duihao(int h,int x)
	{
		setcolor(GREEN);
				if(h==2)
				{
						if(x==15){outtextxy(260,121,"√");}
						if(x==16){outtextxy(260,141,"√");}
						if(x==17){outtextxy(260,161,"√");}
						if(x==18){outtextxy(260,181,"√");}
						if(x==19){outtextxy(260,201,"√");}
						//	if(y>=221 && y<=238){outtextxy(260,221,"√");}
						//  if(x==5){outtextxy(260,241,"√");}
						if(x==20){outtextxy(260,261,"√");}
						if(x==21){outtextxy(260,281,"√");}
						if(x==22){outtextxy(260,301,"√");}
						if(x==23){outtextxy(260,321,"√");}
						if(x==24){outtextxy(260,341,"√");}
						if(x==25){outtextxy(260,361,"√");}
						if(x==26){outtextxy(260,381,"√");}
						if(x==27){outtextxy(260,401,"√");}
						if(x==28){outtextxy(260,421,"√");}
                }
				if(h==1)
				{
						if(x==1){outtextxy(260,121,"√");}
						if(x==2){outtextxy(260,141,"√");}
						if(x==3){outtextxy(260,161,"√");}
						if(x==4){outtextxy(260,181,"√");}
						//	if(y>=201 && y<=218){outtextxy(260,201,"√");}
						//	if(y>=221 && y<=238){outtextxy(260,221,"√");}
						if(x==5){outtextxy(260,241,"√");}
						if(x==6){outtextxy(260,261,"√");}
						if(x==7){outtextxy(260,281,"√");}
						if(x==8){outtextxy(260,301,"√");}
						if(x==9){outtextxy(260,321,"√");}
						if(x==10){outtextxy(260,341,"√");}
						if(x==11){outtextxy(260,361,"√");}
						if(x==12){outtextxy(260,381,"√");}
						if(x==13){outtextxy(260,401,"√");}
						if(x==14){outtextxy(260,421,"√");}
                }
				if(h==3)
				{
						if(x==29){outtextxy(260,121,"√");}
						if(x==30){outtextxy(260,141,"√");}
						if(x==31){outtextxy(260,161,"√");}
						//if(x==4){outtextxy(260,181,"√");}
						//	if(y>=201 && y<=218){outtextxy(260,201,"√");}
						if(x==32){outtextxy(260,221,"√");}
						if(x==33){outtextxy(260,241,"√");}
						if(x==34){outtextxy(260,261,"√");}
						if(x==35){outtextxy(260,281,"√");}
						if(x==36){outtextxy(260,301,"√");}
						if(x==37){outtextxy(260,321,"√");}
						if(x==38){outtextxy(260,341,"√");}
						if(x==39){outtextxy(260,361,"√");}
						if(x==40){outtextxy(260,381,"√");}
						if(x==41){outtextxy(260,401,"√");}
						if(x==42){outtextxy(260,421,"√");}
                }
	
	}
	void diyiyejiemian(int l)
	{
		k[l].yeshu=1;
        //k[l].zhouzicaichushihua();
        initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"菜單");
        settextstyle(25,0,"粗體");
        outtextxy(25,80,"爽口涼菜");
        outtextxy(25,210,"經典熱菜");
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
		outtextxy(370,450,"合計:");
		IMAGE img4;	// 定義 IMAGE 對象
			loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
			putimage(570, 450, &img4);
		outtextxy(570,450,"保存");
        IMAGE img2;	// 定義 IMAGE 對象
        loadimage(&img2, "圖片\\箭頭下.jpg");	// 讀取圖片到 img 對象中
        putimage(251,450, &img2);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        //shuchu(1,25,120);
        int i;
        for(i=1; i<=4; i++)
        {
            shuchu(i,25,120+20*(i-1),l);
        }
        for(i=5; i<=14; i++)
        {
            shuchu(i,25,120+20*(i+1),l);
        }
	}
	void dieryejiemian(int l)
	{
		k[l].yeshu=2;
		IMAGE img;	// 定義 IMAGE 對象
		loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
		putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
		setbkmode(TRANSPARENT);//背景透明
		setcolor(RED);//顏色
		settextstyle(40,0,"粗體");
		outtextxy(60,25,"菜單");
		settextstyle(25,0,"粗體");
		outtextxy(25,80,"經典熱菜");
		outtextxy(25,225,"副食類");
			setcolor(RED);//顏色
			settextstyle(25,0,"粗體");
			outtextxy(370,450,"合計:");
			IMAGE img4;	// 定義 IMAGE 對象
			loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
			putimage(570, 450, &img4);
			outtextxy(570,450,"保存");
		int i;
		for(i=1; i<=5; i++)
		{
			shuchu(i+14,25,120+20*(i-1),l);
		}
		for(i=6; i<=14; i++)
		{
			shuchu(i+14,25,120+20*(i+1),l);
		}
		IMAGE img2;
		loadimage(&img2, "圖片\\箭頭下.jpg");
		putimage(251,450, &img2);
		IMAGE img3;
		loadimage(&img3, "圖片\\箭頭上.jpg");
		putimage(150,450, &img3);

	}
	void disanyejiemian(int l)
	{
		k[l].yeshu=3;
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(40,0,"粗體");
        outtextxy(60,25,"菜單");
        settextstyle(25,0,"粗體");
        outtextxy(25,80,"副食類");
        outtextxy(25,185,"新增特色類");
		setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
		outtextxy(370,450,"合計:");
		IMAGE img4;	// 定義 IMAGE 對象
		loadimage(&img4, "圖片\\按鈕金屬黃.jpg");	// 讀取圖片到 img 對象中
		putimage(570, 450, &img4);
		outtextxy(570,450,"保存");
        IMAGE img3;
        loadimage(&img3, "圖片\\箭頭上.jpg");
        putimage(150,450, &img3);
		int i;
        for(i=1; i<=3; i++)
        {
            shuchu(i+28,25,120+20*(i-1),l);
        }
        for(i=4; i<=(num-28); i++)
        {
            shuchu(i+28,25,120+20*(i+1),l);
        }
	}
	void shuaping(int ll,int h)//ll是桌子的編號,h是菜單的頁數
	{
		int i;
		if(h==1)
		{	
			diyiyejiemian(ll);
			k[ll].sum=0.0;
			for(i=1;i<=num;i++)
			{
				if(k[ll].zhuozicai[i]==1)
				{
					/*char s[100];
					 sprintf(s,"%d",i);
					 outtextxy(150,420,s);*/
					k[ll].sum+=l[i].b;
					duihao(h,i);
				}
			}
			setcolor(BLUE);//顏色
			settextstyle(25,0,"粗體");
			char s[30];
			sprintf(s,"%.1lf",k[ll].sum);
			outtextxy(440,450,s);
		}
		if(h==2)
		{
			dieryejiemian(ll);
			k[ll].sum=0.0;
			for(i=1;i<=num;i++)
			{
				if(k[ll].zhuozicai[i]==1)
				{
					k[ll].sum+=l[i].b;
					duihao(h,i);
				}
			}
			setcolor(BLUE);//顏色
			settextstyle(25,0,"粗體");
			char s[30];
			sprintf(s,"%.1lf",k[ll].sum);
			outtextxy(440,450,s);
		}
		if(h==3)
		{
			disanyejiemian(ll);
			k[ll].sum=0.0;
			for(i=1;i<=num;i++)
			{
				if(k[ll].zhuozicai[i]==1)
				{
					k[ll].sum+=l[i].b;
					duihao(h,i);
				}
			}
			setcolor(BLUE);//顏色
			settextstyle(25,0,"粗體");
			char s[30];
			sprintf(s,"%.1lf",k[ll].sum);
			outtextxy(440,450,s);
		}
	}
};
diancai c;
class fuwuyuan//服務員登錄
{
public:
    void fuwuyuandenglu()
    {
        initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
        outtextxy(100,80,"請輸入賬號密碼");
        setcolor(BLACK);//顏色
        settextstyle(20,0,"粗體");
        //IMAGE img4;
        //loadimage(&img4, "圖片\\退出鍵.jpg");
        //putimage(740,450 , &img4);
        IMAGE img2;
        loadimage(&img2, "圖片\\空白條.jpg");
        putimage(150,135 , &img2);
        putimage(150,175 , &img2);
        outtextxy(100,140,"賬號:");
        outtextxy(100,180,"密碼:");
        settextstyle(25,0,"粗體");
        setcolor(RED);
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
        putimage(180,250 , &img3);
        outtextxy(180,250,"登錄");
        char s1[100],s2[100],a,s[100];
        setcolor(BLUE);
        settextstyle(20,0,"粗體");
        scanf("%s",s1);
        outtextxy(160,140,s1);
        scanf("%s",s2);
        outtextxy(160,180,"******");
        MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
                /*char s[100];
                	sprintf(s,"%d",y);
                	outtextxy(150,420,s);*/
                if(x>=180 && x<=235 && y>=251 && y<=280)//進入點菜界面
                {
					int flag=0;
					for(int i=1;i<=fwynum;i++)
					{
						if(strcmp(fwy[i].zhanghao,s1)==0 && strcmp(fwy[i].mima,s2)==0)//登錄成功
						{
							flag=1;
							break;
						}
					}
                    if(flag)
					{
						 c.diancaijiemain();;
					}
                    else
                    {
						setcolor(RED);
						outtextxy(80,400,"賬號密碼錯誤,請重新輸入!");
						Sleep(1000);
						fuwuyuandenglu();
                    }
                }
            }
        }

    }
};
class guanliyuan//管理員登錄
{
public:
    void guanliyuandenglu()
    {
        initgraph(800, 500);
        IMAGE img;	// 定義 IMAGE 對象
        loadimage(&img, "圖片\\背景.jpg");	// 讀取圖片到 img 對象中
        putimage(0, 0, &img);	// 在座標 (0, 0) 位置顯示 IMAGE 對象
        setbkmode(TRANSPARENT);//背景透明
        setcolor(RED);//顏色
        settextstyle(25,0,"粗體");
        outtextxy(100,80,"請輸入賬號密碼");
        setcolor(BLACK);//顏色
        settextstyle(20,0,"粗體");
        //IMAGE img4;
        //loadimage(&img4, "圖片\\退出鍵.jpg");
        //putimage(740,450 , &img4);
        IMAGE img2;
        loadimage(&img2, "圖片\\空白條.jpg");
        putimage(150,135 , &img2);
        putimage(150,175 , &img2);
        outtextxy(100,140,"賬號:");
        outtextxy(100,180,"密碼:");
        settextstyle(25,0,"粗體");
        setcolor(RED);
        IMAGE img3;
        loadimage(&img3, "圖片\\按鈕金屬黃.jpg");
        putimage(180,250 , &img3);
        outtextxy(180,250,"登錄");
        char s1[100],s2[100],a,s[100];
        setcolor(BLUE);
        settextstyle(20,0,"粗體");
        scanf("%s",s1);
        outtextxy(160,140,s1);
        scanf("%s",s2);
        outtextxy(160,180,"******");
        MOUSEMSG m;
        while(1)
        {
            m = GetMouseMsg();//獲取鼠標
            if(m.uMsg==WM_LBUTTONUP)//左鍵
            {
                int x=m.x;
                int y=m.y;
                /*char s[100];
                sprintf(s,"%d",y);
                outtextxy(150,420,s);*/
                if(x>=180 && x<=238 && y>=250 && y<=280)//
                {
					int flag=0;
					for(int i=1;i<=glynum;i++)
					{
						if(strcmp(gly[i].zhanghao,s1)==0 && strcmp(gly[i].mima,s2)==0)//登錄成功
						{
							flag=1;
							break;
						}
					}
                    if(flag)
					{
						g.guanliyuanjiemian();
					}
                    else
                    {
						setcolor(RED);
						outtextxy(80,400,"賬號密碼錯誤,請重新輸入!");
						Sleep(1000);
						guanliyuandenglu();  
                    }
                }
            }
        }

    }
};
void init()
{
    int i;
	ifstream in3("文件\\管理員數量.txt");
	in3>>glynum;
	in3.close();
	ifstream in4("文件\\服務員數量.txt");
	in4>>fwynum;
	ifstream in7("文件\\消費記錄數量.txt");
	in7>>xiaofeinum;
	in7.close();
	ifstream in8("文件\\員工數量.txt");
	in8>>ygnum;
	in8.close();
	ifstream in1("文件\\菜的數量.txt");
	in1>>num;
	in1.close();
	ifstream in("文件\\菜.dat",ios::binary);//從文件中讀菜
	for(i=1;i<=num;i++)
	{
		in.read((char *)&l[i],sizeof(l[i]));//從文件中讀菜的數量
	}
	in.close();
	ifstream in2("文件\\管理員賬號密碼.dat",ios::binary);
	for(i=1;i<=glynum;i++)
	{
		in2.read((char *)&gly[i],sizeof(gly[i]));
	}
	in2.close();
	ifstream in5("文件\\服務員賬號密碼.dat",ios::binary);
	for(i=1;i<=fwynum;i++)
	{
		in5.read((char *)&fwy[i],sizeof(fwy[i]));
	}
	in5.close();
}
int main()
{
    init();
    showmain t;
    fuwuyuan a;//服務員
    guanliyuan b;//管理員
    t.zhujiemian();
    MOUSEMSG m;	//定義鼠標
    while(1)
    {
        m = GetMouseMsg();//獲取鼠標
        if(m.uMsg==WM_LBUTTONUP)//左鍵
        {
            int x=m.x;
            int y=m.y;
            /*char s[100];
            sprintf(s,"%d",x);
            outtextxy(150,420,s);
			*/
            if(x>=150 && x<=259 && y>=260 && y<=292)//進入服務員登錄界面
            {
                a.fuwuyuandenglu();
            }
            if(x>=150 && x<=259 && y>=320 && y<=351)//進入管理員登錄界面
            {
                b.guanliyuandenglu();
            }
            if(x>=740 && x<=781 && y>=450 && y<=488)//退出本程序
            {
                exit(0);
            }
        }
    }
    getch();
    closegraph();
    return 0;
}

/*
#include <graphics.h>
#include <conio.h>
#include <stdio.h>

void main()
{
	// 初始化圖形窗口
	initgraph(640, 480);

	MOUSEMSG m;						// 定義鼠標消息
	while(true)
	{
		// 獲取一條鼠標消息
		m = GetMouseMsg();
		printf("%d   %d\n",m.x,m.y);

		switch(m.uMsg)
		{
			case WM_MOUSEMOVE:		// 鼠標移動的時候畫紅色的小點
				putpixel(m.x, m.y, RED);
				break;

			case WM_LBUTTONDOWN:	// 如果點左鍵的同時按下了 Ctrl 鍵
				if (m.mkCtrl)		// 畫一個大方塊
					rectangle(m.x-10, m.y-10, m.x+10, m.y+10);
				else				// 畫一個小方塊
					rectangle(m.x-5, m.y-5, m.x+5, m.y+5);
				break;

			case WM_RBUTTONUP:
				return;				// 按鼠標右鍵退出程序
		}
	}

	// 關閉圖形窗口
	closegraph();
}

  */

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章