咖啡厅管理系统实训报告_第1页
咖啡厅管理系统实训报告_第2页
咖啡厅管理系统实训报告_第3页
咖啡厅管理系统实训报告_第4页
咖啡厅管理系统实训报告_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专业技术实训报告题目:基于C#语言的咖啡厅系统系别:专业:学生姓名:指导老师:成 绩:2011年8月8日1系统分析1.1开发背景及意义在信息高度发达的今天,随着人们生活水平的不断提高,餐饮业的种类在千变万化之中,餐饮业消费持续增长,同行业之间的竞争越来越激烈。为了提高工作效率,这就迫切需要引入准确、高效的计算机管理方式。该软件使用计算机对餐饮信息进行管理,目的在于让许多餐饮企业可以拥有完整的计算机管理,具有手工管理所无法比拟的优点,能够极大地提高运营管理的效率。餐饮业务涉及的各个工作环节已不再仅仅是传统的管理、结算业务,而是更广、更全面的服务性行业代表。特别是近年来我国的餐饮业面临更加激烈的同

2、业竞争,如何提供更多的工作流程和更优质的服务,如何吸引更多的客户,如何利用计算机技术加强顾客个人信息管理、进行客户业务再造,提高员工的工作效率和业务竞争能力是摆在各家餐饮企业面前的一个迫切需要解决的问题。餐饮行业发展态势明显,主要体现在连锁经营、品牌培育、技术创新、管理科学化为代表的现代餐饮企业,大众化消费越来越成为餐饮消费市场的主题;餐饮文化已经成为餐饮品牌培育和餐饮企业竞争的核心,现代科学技术、科学的经营管理、现代营养理念在餐饮行业的应用已经越来越广泛。本系统设计的主要意义在于它能够切实有效地指导工作人员规范业务操作流程,更高效、快捷地实现业务的管理,保障顾客信息的安全,提高管理水平和工作

3、效率,进而提高业务竞争能力。1.2可行性研究1.2.1技术可行性本系统采用的是Visual Studio 2005作为开发环境,采用SQL Server 2005数据库实现数据存储。如今微软已经研究出Visual Studio 2008和SQL Server 2008,本系统也可以在这些环境中进行编辑、修改、运行。1.2.2经济可行性由于本系统属于比较小型的管理系统,只需几台电脑就可以对所有餐台进行管理,同时也不像以前咖啡厅有很多的服务员,所以需要投入的资金不需要很大,同时这个小型的管理系统比以前手工操作方便了很多,从而减少了很多时间,利用这些时间可以为咖啡厅带来很大的收益。1.3功能需求本系

4、统是咖啡厅管理系统,属于餐饮行业的管理系统,一般的餐饮行业的餐馆在运营期间,操作基本上就是点餐、结账等等的简单操作。而本系统的开发为餐饮行业的餐馆带来的功能已经包含了那些基本操作,同时也添加很多的功能,比如老板可以随时查看餐台信息、定餐信息、开单信息,只要轻轻点几下鼠标就可以查看,比以前的纸张记录好很多、方便很多。再者本系统设计页面里的显示信息可以随意更改,用户可以将自己本店的很多特色添加进去,以实现自身的独特性。本系统可以用于很多类似咖啡厅的店铺,比如茶馆、酒吧、饭店等等。只要将里面的程序进行进一步完善,增强一些功能,增加一些需要的功能,这个系统可以变成比较大型的系统,就可以用于比较大型的餐

5、饮行业的酒店。所以我认为本系统的功能很适合各种餐饮行业。1.4环境需求1.4.1硬件环境如果想把该系统用于比较小型的餐饮企业的话,只需要一台设备完善的电脑就行,或者可以增加几台设备完善的电脑就能管理整个店铺。设备需要显示屏、主机、键盘、鼠标等等。如果想把该系统进一步完善用于比较大型的餐饮企业,比如酒店,则可以10几个餐台用一台电脑管理,或者更多的餐台用一台电脑管理,所以大型的餐饮企业也不需要很多的电脑就可以管理整个酒店,减少了设备引进的资金。1.4.2软件环境因为该系统是用Visual Studio 2005作为开发环境,采用SQL Server 2005数据库实现数据存储,如果想对系统进行更

6、改,可以在网上直接下载安装就可以更改运行。想要更改系统显示的信息可以运行Visual Studio 2005,在程序里面进行更改显示信息,如果想对存储信息进行管理,可以运行SQL Server 2005里,可以对每个表进行更改、新增、删除,也可以对表里的数据进行更改、新增、删除。所以非常方便。2系统设计2.1系统结构设计通过需求分析,了解到系统需要实现的主要功能模块以及各个模块实现所涉及的数据对象,下面就对这个系统做个正题的设计和构架。2.1.1系统功能模块设计基于以上需求分析和数据分析,对于一个标准的咖啡厅管理系统应该有了一个全面的认识。系统模块主要包括主界面、顾客开单、销售、预定管理、宾客

7、结账、餐台状态、顾客消费情况查询。系统功能模块图如图2.1所示。图2.1系统功能模块图主界面:用来显示各个功能的按钮,各个餐台的状态,开店时间,还有所有餐台总状态。顾客开单:分为三个部分:(1)顾客登记:对指定餐台进行开单登记;(2)修改登记:对指定餐台的登记情况进行修改和删除;(3)所有登记:显示以前所有餐台的开单情况。销售:分为两个部分:(1)吧台销售:对指定餐台进行定餐;(2)增加消费:对指定餐台进行增加消费。预订管理:分为四个部分:(1)新增预订:对指定餐台进行预订;(2)修改预订:对指定餐台的所有预订信息进行修改;(3)删除预订:删除指定餐台的预订信息;(4)查看预订:能搜索指定餐台

8、的预订信息,能够查看到所有餐台的预订情况。餐台状态:能够查询到指定餐台的状态情况,还能够修改指定餐台的状态。宾客结账:分为两个部分:(1)宾客结账:查询指定餐台的消费情况,对指定餐台进行结账;(2)合并结账:添加指定餐台,然后合并一起结账。顾客消费:分为两个部分:(1)查询消费:能够查询到指定餐台的消费情况;(2)消费记录:能够看到以前的所有餐台的消费记录。2.2数据库设计2.2.1数据库概念设计(1)咖啡厅餐台信息包含:餐台编号、顾客人数、服务生、顾客姓名、开单时间。定餐信息包含:餐台编号、定餐菜单、定餐数量、定餐金额。预订信息包含:预订餐台编号、预订人姓名、预订人电话、预订时间。咖啡厅餐台

9、信息实体图如图2.2所示。图2.2咖啡厅餐台信息实体图(2)定餐信息实体图如图2.3所示。图2.3定餐信息实体图2.2.2数据库逻辑设计数据库中共有6个表,分别是餐台定餐表、餐台状态表、餐台开单表、消费记录表、开单记录表、预订餐台表,具体信息如下。(1)餐台定餐表主要用来存储指定餐台的定餐信息,主要字段有餐台编号、定餐数量、定餐菜单、定餐金额,设餐台编号为主键。如表2.1所示。表2.1餐台定餐表列名数据类型长度可否为空idnvarchar50NOT NULLslnvarchar50NULLcdnvarcharMAXNULLjenvarchar50NULL(2)餐台状态表主要是用来存储各个餐台的

10、状态和是否定餐情况,主要字段有餐台编号、餐台状态、是否定餐,设餐台编号为主键。如表2.2所示。表2.2餐台状态表列名数据类型长度可否为空idnvarchar50NOT NULLknvarchar50NULLdcnvarchar1NULL(3)餐台开单表主要是用来存储指定餐台开单情况,主要字段有餐台编号、顾客人数、服务生、开单时间、顾客姓名,设餐台编号为主键。如表2.3所示。表2.3餐台开单表列名数据类型长度可否为空idnvarchar50NOT NULLrsnvarchar50NULLfwsnvarchar50NULLsjnvarchar50NULLnamenvarchar50NULL(4)消

11、费记录表主要是用来存储以前各个餐台的消费记录,主要字段有餐台编号、定餐数量、定餐菜单、定餐金额、结账时间。如表2.4所示。表2.4消费记录表列名数据类型长度可否为空idnvarchar50NULLslnvarchar50NULLcdnvarchar50NULLjenvarchar50NULLsjnvarchar50NULL(5)开单记录表主要是用来存储以前各个餐台的开单情况,主要字段有餐台编号、顾客人数、服务生、开单时间、顾客姓名。如表2.5所示。表2.5开单记录表列名数据类型长度可否为空idnvarchar50NULLrsnvarchar50NULLfwsnvarchar50NULLsjnv

12、archar50NULLnamenvarchar50NULL(6)预订餐台表主要是用来存储对指定餐台的预订情况,主要字段有餐台编号、预订人姓名、预订人电话、顾客人数、预定时间,设餐台编号为主键,如表2.6所示。表2.6预订餐台表列名数据类型长度可否为空idnvarchar50NOT NULLnamenvarchar50NULLphonenvarchar50NULLrsnvarchar50NULLsjnvarchar50NULL2.3系统界面设计2.3.1人机界面设计准则1、一致性。2、较少步骤。3、及时提供反馈信息。4、无需记忆。5、易学。6、富有吸引力。7、易操作性。2.3.2用户界面设计(

13、1)主界面操作人员打开系统以后就进入主窗体,主窗体有很多的不同功能。在窗体的顶端选择Menu Strip控件显示按功能分组的选项;接下来是放置一个Panel控件,设置背景图片,在Panel控件里放置五个Button控件,各个Button控件设备背景图片,点击Button控件可以进入不同的窗体;在下面空间的左半部分放置一个Panel控件,在Panel里的顶部放一个Label控件,用来显示动态时间,下面放置四个Label控件,用来显示大厅、最低消费、计费标准、开店时间;再在下面放置五个Label控件,用来显示餐台总状态、餐台总数、当前占用、当前可供、当前预订;在这个Panel控件的右边空间也放置一

14、个Panel控件,并设置背景图片,在Panel控件里放置12个PictureBox控件和12个Label控件,PictureBox控件用来显示12个餐台的状态效果,是用图片显示的,Label控件是用来显示12个餐台的编号。如图2.4所示。图2.4咖啡厅管理系统主界面(2)餐台状态当操作人员想要对指定餐台的状态进行更改,就进入餐台状态窗口。这个窗口分为上、中、下三个小部分。上部分是用来查询指定餐台的状态以及信息,在第一行放入一个Label控件,信息是“餐台编号”,放一个TextBox控件,用来用户输入指定的餐台编号,放一个Button控件,信息是“查询”,是用来点击以后从数据库中返回指定餐台的状

15、态及相关信息,第二行放四个Label控件,其中两个信息为“该餐台状态”和“顾客姓名”,剩下两个Label控件是用来显示指定餐台的状态和相关信息;中间部分是用来为下部分注明,放一个Label控件,信息是“以下不能修改使用和预订的餐台”,在这个Label控件上下各放一个Label控件用来分隔;下部分是用来修改指定餐台的状态,放两个Label控件,信息是“餐台编号”和“修改状态”,接着放一个TextBox控件,用来用户输入指定的餐台编号,三个RadioButton控件和三个PictureBox控件,三个RadioButton控件分别代表“可用”、“停用”、“脏台”,三个PictureBox控件是用来

16、显示三种状态的图片效果,最后放两个Button控件,信息分别是“修改”和“取消”,“修改”是用来对指定餐台修改状态,“取消”是用来返回到主窗口。如图2.5所示。图2.5咖啡厅管理系统餐台状态界面2.4系统详细设计(1)操作人员在客户进入咖啡厅以后,要进行顾客开单,顾客开单流程图如图2.6所示。开始开单成功主界面输入餐台编号、顾客人数、服务生、顾客姓名取消确定餐台编号、顾客人数、服务生、顾客姓名是否输入正确重输N该餐台是否空闲YNY吧台销售窗口图2.6顾客开单流程图(2)当顾客用餐完毕后,操作人员会进行宾客结账操作,宾客结账流程图如图2.7所示。开始取消输入要结账的餐台编号结账是否输入餐台编号重

17、输NY该餐台是否开单NY该餐台是否定餐NY主界面因为您没有定餐,所以收取您10元钱结账成功,收取XX元钱图2.7宾客结账流程图3系统实现3.1系统功能实现1、顾客登记窗口主要功能是对指定餐台进行开单操作。填写好餐台编号、顾客人数、服务生、顾客姓名,点击“确定”按钮后,就会实现开单操作。窗口如图3.1所示。图3.1顾客登记窗口“确定”按钮代码如下:privatevoid button1_Click(object sender, EventArgs e) string z = "", y = "", x = "", k = "&

18、quot;/定义三个string类型的量,代表餐台编号、顾客人数、服务生、顾客姓名bool t = false;/判断餐台编号、顾客人数、服务生、顾客姓名是否填写正确if (textBox1.Text = "")/当餐台编号没有输入,则显示下面信息MessageBox.Show("请输入使用的餐台编号");else int a = int.Parse(textBox1.Text);/将餐台编号转换成int类型if (a < 1 | a > 12)/判断输入的餐台编号是否在1到12之间 MessageBox.Show("没有该餐台,请

19、重新输入"); textBox1.Text = "" else z = textBox1.Text;/如果餐台编号输入正确,则把值赋给zif (textBox3.Text = "")/如果顾客姓名没有填写,则显示下面信息MessageBox.Show("请输入顾客姓名");else k = textBox3.Text;/如果填写了顾客姓名,则把值赋给kif (textBox2.Text = "")/如果顾客人数没有填写,则显示下面信息MessageBox.Show("请输入顾客人数")

20、;else y = textBox2.Text;/如果填写了顾客人数,则把值赋给yif (radioButton1.Checked)/如果选择了第一个radioButton x = radioButton1.Text;/把第一个radioButton的值赋给x t = true;/判断餐台编号、顾客人数、服务生、顾客姓名填写正确 elseif (radioButton2.Checked)/如果选择了第二个radioButton x = radioButton2.Text;/把第二个radioButton的值赋给x t = true; /判断餐台编号、顾客人数、服务生、顾客姓名填写正确 else

21、/如果没有填写服务生就显示下面信息MessageBox.Show("请选择服务生"); if (t) /判断餐台编号、顾客人数、服务生、顾客姓名填写正确 string c = "5"/定义一个量来存储餐台状态,5代表该餐台使用中SqlConnection con = newSqlConnection("DataSource=.;Initial Catalog=coffee;Integrated Security=True");/与数据库建立连接SqlCommand km = newSqlCommand("select k f

22、rom c where id='" + z + "'", con);/从数据库中返回指定餐台的状态数据 con.Open();SqlDataReader dr = km.ExecuteReader(); dr.Read();string d = dr.GetString(0).ToString();/定义一个量存储从数据库中返回的值 con.Close();if (d = "1")/如果返回值是1代表该餐台是空闲中就可以进行下面的开单 string o = DateTime.Now.ToString();/定义一个量存储开单时间

23、SqlCommand cm = newSqlCommand("update c set k='" + c + "' where id='" + z + "'", con);/修改该餐台的状态SqlCommand dm = newSqlCommand("insert into d values('" + z + "','" + y + "','" + x + "','"

24、+ o + "','" + k + "')", con);/将开单信息存储进数据库中的餐台开单表SqlCommand fm = newSqlCommand("insert into kd values('" + z + "','" + y + "','" + x + "','" + o + "','" + k + "')", con)

25、;/将开单信息存储进数据库中的开单记录表 con.Open(); cm.ExecuteNonQuery(); cm.Dispose(); dm.ExecuteNonQuery(); dm.Dispose(); fm.ExecuteNonQuery(); fm.Dispose(); con.Close();MessageBox.Show("欢迎就餐,请点餐");/开单成功就显示此信息Form1 f = newForm1(); f.b();/调用主界面中的b方法,来对主界面的12个餐台的状态显示不同图片 f.a(int.Parse(z);/调用主界面中的a方法,用来计算餐台总状

26、态情况this.Close();Form3 kdd = newForm3(); kdd.Show();/打开吧台销售窗口 elseMessageBox.Show("该餐台已使用,请另选一个餐台");/如果该餐台不是空闲状态就显示此信息 2、修改登记窗口修改登记窗口的功能是用来对已经登记的用户信息进行更改。操作人员首先输入要修改的餐台编号,点击查询,如果该餐台有开单信息就会显示出顾客姓名和顾客人数,如果没有开单信息就会显示其它信息,接着在修改顾客姓名和修改顾客人数中填写完整信息,点击修改就会修改成功。如图3.2所示。图3.2修改登记窗口“修改”按钮代码如下:privatevo

27、id button4_Click(object sender, EventArgs e)/判断输入的餐台编号是否开单if (label11.Text = "")/如果输入的餐台没有登记,则显示警告信息MessageBox.Show("由于该餐台没有登记,所以不能修改");else/如果输入的餐台有登记,就执行修改操作 /判断修改顾客姓名和修改顾客人数是否填写完整if (textBox5.Text = "" | textBox6.Text = "")/如果没有填写完整,显示警告MessageBox.Show(&quo

28、t;请填写完整");else/如果填写万张,就执行修改操作 SqlConnection con = newSqlConnection("Data Source=.;Initial Catalog=coffee;Integrated Security=True");/与数据库建立连接SqlCommand cm = newSqlCommand("update d set name='" + textBox5.Text + "',rs='" + textBox6.Text + "' whe

29、re id='" + label20.Text + "'", con);/修改数据库中顾客开单表中的餐台信息SqlCommand dm = newSqlCommand("update kd set name='" + textBox5.Text + "',rs='" + textBox6.Text + "' where id='" + label20.Text + "'", con);/修改数据库中开单记录表中的餐台信息

30、con.Open(); cm.ExecuteNonQuery(); cm.Dispose(); dm.ExecuteNonQuery(); dm.Dispose(); con.Close();MessageBox.Show("修改成功");/修改成功以后显示信息Form1 f = newForm1();/修改成功以后返回到主界面 f.Show(); f.b();this.Close();/本窗口关闭 3、新增预定窗口新增预定窗口主要是用来对一些空闲餐台进行预订操作。操作人员可以输入预订餐台编号、联系人姓名、联系人电话、顾客人数,然后点击预订,如果所要预订的餐台不是空闲状态会

31、显示警告信息,如果是空闲状态会预订成功。如图3.3所示。图3.3新增预定窗口“预订”按钮代码如下:privatevoid button1_Click(object sender, EventArgs e) int he = int.Parse(textBox1.Text);/将输入的预定餐台编号转换成int类型 /判断预定餐台编号、联系人姓名、联系人电话、顾客人数是否输入完整if (textBox1.Text = "" | textBox2.Text = "" | textBox3.Text = "" | textBox4.Text

32、= "")/如果没有输入完整,则显示警告信息MessageBox.Show("请填写完整");elseif (he < 1 | he > 12)/如果输入完整,判断输入的餐台编号是否超出餐台编号 MessageBox.Show("没有该餐台,请重新输入");/如果超出餐台编号,显示警告信息 textBox1.Text = ""/将原先输入的值清空重新输入 else/如果没有超出餐台编号,则进行预订操作 SqlConnection con = newSqlConnection("Data Sou

33、rce=.;Initial Catalog=coffee;Integrated Security=True");/与数据库建立连接SqlCommand km = newSqlCommand("select k from c where id='" + textBox1.Text + "'", con);/查询预订的餐台是否空闲con.Open();SqlDataReader dr = km.ExecuteReader();dr.Read();string d = dr.GetString(0).ToString();/将返回的餐

34、台状态值赋给dcon.Close();if (d = "1")/如果空闲,就可以预订SqlCommand cm = newSqlCommand("insert into yd values('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + DateTime

35、.Now.ToString() + "')", con);/将预订信息插入进餐台预定表中SqlCommand dm = newSqlCommand("update c set k='" + 2 + "' where id='" + textBox1.Text + "'", con);/修改该餐台的状态值con.Open();cm.ExecuteNonQuery();cm.Dispose();dm.ExecuteNonQuery(); dm.Dispose();con.Close();MessageBox.Show("预订成功");/预订成功以后显示警告信息this.Close();/本窗口关闭Form1 f = newForm1();/返回到主界面f.Show();f.b();elseMessageBox.Show("该台不能使用,请另选一个餐台");/如果该餐台不是空闲状态,则显示警告信息4系统测试4.1测试项目打开主界面以后,进行操作:顾客开单->吧台销售-&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论