餐厅信息管理系统

news/2025/2/11 18:24:25/

简易餐厅信息管理系统

            餐厅管理流程是一个小型的信息管理系统,本文采用c/c++中的结构体、文件的输入、输出等操作,实现了一个餐厅中的预约、点菜、查询信息、收款基本功能。

1.模块分析

            本文将一个餐厅信息管理系统划分为如下图所示的子模块。

            主要功能如下:

            (1)预约和点菜功能:这是一个餐厅最最基本业务。预约功能既能方便用户预订餐厅业务,同时又可以让餐厅人员提前准备相关食材和菜品,减少客人等待时间,提高顾客的消费体验。

            (2)查询功能:包括预约信息查询和账单查询。预约查询可以方便顾客查询和更改预约信息,店家根据预约情况做出相应安排;账单查询可以是顾客了解自己的消费情况,避免差错。

            (3)收款功能:顾客用餐结束后,系统根据桌号查询顾客的消费情况并计算出总金额。


                              

2.程序设计

     基本设计思想:

     程序中主要涉及以下几个函数:

    (1)初始菜单信息:第一次进入系统时,需要对菜单信息进行初始化。

              记录菜单信息:将菜单信息记录到menu.txt文件中。

              打印菜单:打印菜单信息,供顾客点菜。

              void init_menu();     void save_menu();     void show_menu(int i);  

    (2)记录预约信息:记录顾客的姓名,手机号,预约时间。

             查询预约信息:查询所有的预约信息。

              void save_bespeak(int f);          void show_bespeak(int bes_num);    

    (3)记录点菜信息:记录桌号,菜的数量,菜名,价格。

             查询点菜信息:查询消费记录。

             void save_order(int or_num);             void show_order(int or_num);  

       代码(c/c++)

#include <iostream>
using namespace std;
#define N 9999
#define size 5                  //菜品数
struct menu                     //菜单
{char cai_name[15];      //菜名int price;              //菜的价格
}menu[N];
struct  order                 //每张桌子点菜信息
{int desk_num;           //桌号char cai_name[15];      //菜名int price;              //菜的价格
}order[N];
struct bespeak                  //顾客预约信息
{char cus_name[15];      //顾客名字int mobilenum;          //手机号double time;            //预约时间
}bespeak[N];
void save_menu(int i);         //保存菜单信息
void save_bespeak(int f);       //保存预约信息
void save_order(int or_num);             //保存点菜信息
void show_menu();              //显示菜单信息
void show_bespeak(int bes_num);           //显示预约信息
void show_order(int or_num);             //显示点菜信息
void init_menu();              //初始化菜单信息
int main()
{init_menu();show_menu();int bes_num=0,or_num=0;
re:cout<<"输入密码进入系统:"<<endl;int password;cin>>password;if(password==123456){FILE *fp1,*fp2;fp1=fopen("D:\\restauraut\\order.txt","w");fp2=fopen("D:\\restauraut\\bespeak.txt","w");fclose(fp1);fclose(fp2);                                    //清空预约、点菜文件中的信息system("cls");cout<<"欢迎进入餐厅信息管理系统"<<endl;kaishi:cout<<"选项 1.餐饮管理 2.信息查询 3.收银管理 4.退出"<<endl;int xx;cin>>xx;if(xx==1){system("cls");ss:cout<<"选项 1.预约记录 2.桌台点菜 3.退出"<<endl;int xx_1;cin>>xx_1;if(xx_1==1){system("cls");cout<<"记录预约信息(姓名 手机号后四位 时间(时.分))"<<endl;cin>>bespeak[bes_num].cus_name>>bespeak[bes_num].mobilenum>>bespeak[bes_num].time;save_bespeak(bes_num);cout<<"记录完毕"<<endl;bes_num++;goto ss;}else if(xx_1==2){system("cls");cout<<"分配桌位号:";int d_num;cin>>d_num;show_menu();cout<<"记录点菜信息:"<<endl;cout<<"点菜数量:";int num;cin>>num;for(int i=0;i<num;i++){order[i].desk_num=d_num;cin>>order[i].cai_name>>order[i].price;save_order(i);}cout<<"记录完毕"<<endl;or_num+=num;goto ss;}else if(xx_1==3){goto kaishi;}else{cout<<"输入错误,请重新输入:";goto ss;}}else if(xx==2){system("cls");mm:cout<<"选项 1.预约信息 2.消费查询 3.退出"<<endl;int xx_2;cin>>xx_2;if(xx_2==1){system("cls");show_bespeak(bes_num);goto mm;}else if(xx_2==2){system("cls");show_order(or_num);goto mm;}else if(xx_2==3){goto kaishi;}else{cout<<"输入错误,请重新输入:";goto mm;}}else if(xx==3){system("cls");cout<<"结账桌号:";int p;cin>>p;int sum=0;for(int k=0;k<or_num;k++){if(order[k].desk_num==p)sum+=order[k].price;}cout<<"消费金额:"<<sum<<"元"<<endl;cout<<"收银成功"<<endl;goto kaishi;}else if(xx==4){system("cls");cout<<"退出系统..."<<endl;}else{cout<<"输入错误,请重新输入:";goto kaishi;}}else{cout<<"输入错误,请重新输入:";goto re;}return 0;
}
void save_menu()                //保存菜单信息
{FILE *fp;if((fp=fopen("D:\\restauraut\\menu.txt","wb"))==NULL)cout<<"不能打开此文件"<<endl;else{fwrite(menu,sizeof(struct menu),size,fp);}fclose(fp);
}
void init_menu()                //初始化菜单信息
{cout<<"第一次进入系统,请输入菜单信息:"<<endl;cout<<"菜名  价格(元)"<<endl;for(int i=0;i<size;i++){cin>>menu[i].cai_name;cin>>menu[i].price;}save_menu();
}
void show_menu()             //显示菜单信息
{FILE *fp;fp=fopen("D:\\restauraut\\menu.txt","rb");cout<<"菜单信息(菜名  价格(元))"<<endl;for(int i=0;i<size;++i){fread(&menu[i],sizeof(struct menu),1,fp);cout<<menu[i].cai_name<<" "<<menu[i].price<<endl;}fclose(fp);
}
void save_bespeak(int f)           //保存预约信息
{FILE *fp;if((fp=fopen("D:\\restauraut\\bespeak.txt","ab+"))==NULL)cout<<"不能打开此文件"<<endl;else{//fseek(fp,f*sizeof(struct bespeak),SEEK_SET);if(fwrite(&bespeak[f],sizeof(struct bespeak),1,fp)!=1)cout<<"写入错误"<<endl;}fclose(fp);
}
void show_bespeak(int bes_num)           //显示预约信息
{FILE *fp;fp=fopen("D:\\restauraut\\bespeak.txt","rb");cout<<"预约信息(名字 手机号后四位 时间(时.分))"<<endl;for(int i=0;i<bes_num;++i){fread(&bespeak[i],sizeof(struct bespeak),1,fp);cout<<bespeak[i].cus_name<<bespeak[i].mobilenum<<bespeak[i].time;}fclose(fp);
}
void save_order(int or_num)     //保存点菜信息
{FILE *fp;if((fp=fopen("D:\\restauraut\\order.txt","ab+"))==NULL)cout<<"不能打开此文件"<<endl;else{// fseek(fp,or_num*sizeof(struct bespeak),SEEK_SET);if(fwrite(&order[or_num],sizeof(struct order),1,fp)!=1)cout<<"写入错误"<<endl;}fclose(fp);
}
void show_order(int or_num)             //显示点菜信息
{FILE *fp;fp=fopen("D:\\restauraut\\order.txt","rb");cout<<"点菜信息(桌号 菜名 价格(元))"<<endl;for(int i=0;i<or_num;++i){fread(&order[i],sizeof(struct order),1,fp);cout<<order[i].desk_num<<"  "<<order[i].cai_name<<"  "<<order[i].price;}fclose(fp);
}

    部分功能测试结果

      
      
      
      (程序中有些地方还有待完善,基本操作可以完成)

http://www.ppmy.cn/news/633778.html

相关文章

上海西式餐厅一览

卢湾区 "洛西亚"俄罗斯文化主题餐厅 上海市淮海中路438号B1021-63872111 ; 浦东新区 夏龙湾餐厅 上海市陆家嘴路15号陆家嘴中心绿地内021-58771231 ; 卢湾 伊斯坦布尔餐厅 淮海中路900号地下一层 021-64676666 ; 徐汇区 希腊餐厅 上海市吴兴路33号64665608 ; 徐汇…

北京十大不可不去的隐秘餐厅

1、翼栈这个隐蔽的地方也许你曾经路过&#xff0c;但你就是想不到&#xff0c;你身边还有这么好的一个地方。几乎每一个来这里的人&#xff0c;都是被朋友带来的&#xff0c;然后大呼以前怎么就没想到要进来呢。翼栈以旅行为主题&#xff0c;老板都是没事就背包行走各地的驴子。…

餐厅预订系统如何选?餐厅预订系统推荐

餐厅开通餐饮店预订系统&#xff0c;既能能够提升消费者体会&#xff0c;同时也可以巨大降低店员的工作压力&#xff0c;大幅度缩减运行成本。再结合预订成功提醒、就餐提醒等功能&#xff0c;确保客户能按时就餐。那餐馆如何快速、低成本的持有自己的餐饮店预订系统&#xff0…

餐厅的人效该怎么计算?

餐饮属于人效密集的行业之一&#xff0c;尤其是连锁餐饮&#xff0c;除了租金&#xff0c;人力成本是大头&#xff0c;所以人效问题备受关注。之前我们接触的&#xff0c;无论是连锁饭店&#xff0c;如老乡鸡&#xff0c;还是连锁茶饮&#xff0c;都已经在人效管理上发力了&…

洲际酒店集团旗下6家餐厅上榜“2022黑珍珠餐厅指南”

等闲识得东风面&#xff0c;万紫千红总是春 上海2022年4月2日 /美通社/ -- 日前&#xff0c;“2022黑珍珠餐厅指南”榜单发布&#xff0c;洲际酒店集团旗下六家餐厅共摘得黑珍珠七钻荣誉。其中旗下中餐厅将中国美食文化作为载体&#xff0c;在众多餐厅中脱颖而出&#xff0c;包…

万豪国际集团旗下24家餐厅入围2022黑珍珠餐厅指南

上海2021年9月10日 /美通社/ -- 日前&#xff0c;2022黑珍珠餐厅指南最终入围名单公布&#xff0c;万豪国际集团旗下24家餐厅入围&#xff0c;相比去年本次入围餐厅数量增加了41%&#xff0c;也印证了万豪国际集团在餐饮方面的表现逐年稳步提升&#xff0c;越来越多的餐厅获得了…

餐厅预订APP有哪些?餐厅预订APP怎么选择?

餐馆开通餐厅预订APP&#xff0c;不仅优化用户就餐体验&#xff0c;也能降低员工的工作负荷&#xff0c;大幅度缩减运营售价。同时结合预订信息确认、到期前提醒等功能&#xff0c;确保用户能按时就餐。那餐馆如何快速、低成本的具备一套属于自己的餐馆预订APP&#xff0c;这里…

2021年La Liste最佳餐厅特别奖揭晓,佛山102小馆私房菜入选

自2015年以来&#xff0c;La Liste一直是著名的餐厅发现者和分类排行榜制作者。2021年开年&#xff0c;它推出了两项举措来应对新冠病毒肺炎疫情。为了声援世界各地的厨师和餐馆&#xff0c;La Liste取消了年度排名&#xff0c;并公布了一系列新的特别奖和一份新推出的深度出版…