1、哈尔滨工程大学本科生毕业论文目录第1章 绪论11.1 课题背景11.2 课题目的与意义11.3 国内外餐饮系统研究发展状况11.3.1 国内系统发展状况11.3.2 国外系统发展状况21.4 课题需求研究31.4.1 系统需求调研41.4.2 系统需求分析41.5 课题预期目标5第2章 系统分析与设计62.1 系统可行性分析62.2 系统目标72.3 系统总体设计82.3.1 系统功能结构82.3.2 系统业务流程82.3.2 系统用例图92.3.3 系统运行环境102.3.4 系统构架的设计102.4 系统功能分析102.4.1 登录模块102.4.2 使用说明模块112.4.3 系统设置模
2、块112.4.4 前台营业模块122.5 公共模块设计132.5.1 公共模块概述132.5.2 DBConn类142.6 系统主要功能技术分析142.6.1 登录功能技术分析142.6.2 主界面技术分析142.6.3 系统管理模块技术分析152.6.4 前台营业模块技术分析162.7 本章小结20第3章 数据库设计213.1 概述213.2 数据库的需求分析213.3 数据库概念结构设计223.4 数据库逻辑结构设计253.5 创建表间关系283.6 本章小结28第4章 系统的实现304.1 登录模块的实现304.2 主界面模块的实现314.3 系统管理模块的实现324.4 前台营业模块的
3、实现344.4.1 房台管理子模块的实现344.4.2 房台预订子模块的实现354.4.3 消费管理子模块的实现354.5 本章小结36第5章 系统的测试375.1 单元测试375.1.1 概述375.1.2 测试过程375.2 集成测试385.2.1 概述385.2.2 测试过程385.3 系统测试385.3.1 概述385.3.2 测试过程395.4 本章小结39结论40参考文献41致谢43哈尔滨工程大学本科生毕业论文第1章 绪论1.1 课题背景餐饮文化一直是中国传统文化的重要组成部分。民以食为天,随着我国经济的不断发展,人们的生活水平有了很大的提高,而餐饮业也得到了迅猛的发展。而伴随着物
4、质文明的不断进步,人们对餐饮的各方面需求也发生了巨大的变化,而餐饮企业要在日趋复杂的消费环境中脱颖而出,其管理理念和管理水平必将面临严峻的考验。1.2 课题目的与意义餐饮事务管理系统是餐饮产业不可缺少的部分,良好的餐饮事务管理系统对企业的决策者和管理者起着至关重要的作用。但一直以来人们对餐饮事务管理系统的使用均是以人为主体的,这更多的要求着企业对人力、物力和财力的投入,并且效率却不高。而以人为主体的运营方式必然会带来人为的失误,导致管理工作和经营工作的不能有效进行。伴随着计算机行业的不断发展,计算机技术的应用深入人们生产、生活的各个方面,以计算机为平台的餐饮事务管理系统的产生是餐饮业和信息产业
5、发展的必然产物。它是餐企业提高管理水平和服务质量的得力助手,并且不断被更多的企业管理者所重视。它有着传统手工管理系统无法比拟的优点:管理规范、查询方便、响应迅速、安全保密、可靠性高、成本低廉等1。这些优点能够极大的提高企业的餐饮管理效率和企业形象,在增强企业的竞争力的同时也使企业向着正规化、科学化的方向发展。1.3 国内外餐饮系统研究发展状况1.3.1 国内系统发展状况随着企业经营管理理念的变化,为了提高餐饮企业竞争力,管理层将餐饮管理工具提升到了管理系统的核心位置。众多公司都开始陆续使用餐饮管理系统。但由于自身经验的缺乏或对酒店餐饮行业管理理解的不够,至使这些餐饮管理系统功能良莠不齐。(1)
6、点单集中上传的收银式餐饮系统在餐厅的收银处放置装有收银系统的电脑。餐饮管理的开台、点菜流程上仍然使用传统的手工模式,不可避免的仍然需要服务员把手写的菜单分别送到收银台和厨房间,再由收银员把客人的点菜单输入电脑,在结帐的时候可以打结帐单出来,客人根据结帐单来结帐付款。相对应的软件在功能上比较简单,只能实现简单的流程功能,管理上仍需要依托传统的管理模式,没有大的改进。(2)无线点单的整套餐饮系统使用餐饮专用的无线点单系统,对整个餐饮流程进行完整配套的管理,对其中的数据信息进行整合处理,形成预订、开台、点菜、收银、清台、经理查询等全方位的计算机管理信息系统。特别是在点前台管理中进行全程计算机跟踪管理
7、,无一张手工单据,数据准确无误,各种权限设置,避免人为的失误,从源头上杜绝了跑冒滴漏现象2。整套系统形成从营业管理,到辅助管理(包括会员管理、仓库管理、挂账管理、寄存管理和系统管理等),到查询辅助决策一条龙模式。在当前的大中型餐饮企业中得到广泛的应用。1.3.2 国外系统发展状况用软件进行事务管理在欧美国家的一些餐饮企业和酒店是早在上世纪80年代就已经开始运用的手段了。而到目前为止,国外的餐饮事务管理系统已经日趋成熟,并在其餐饮行业得到广泛的应用。目前,国外餐饮管理软件向以下几个方面发展:(1)餐饮管理系统智能化智能化的餐饮管理系统可以为餐饮经营企业把脉,实时监控各种各经营网点的运营情况,检测
8、企业经营问题出在何处,并且能够自动进行分析和做出一定的指导。同时智能化的餐饮系统可以自动获得网系统中各种设备的技术参数,进而智能分析、诊断,以至预警。(2)餐饮管理系统人性化餐饮管理系统已经不再是那种强硬的管理模式,操作和管理日趋灵活,人性化的管理,极大地减少了餐饮管理人员和工作人员的工作量,随着餐饮管理工具的发展,餐饮管理工具也将进一步简单化,操作界面也将更加动态、简捷。(3)餐饮管理系统集成化高度集成化可以让餐饮业管理更加轻松自如,同时实现低成本高效率的管理理念。例如现在可编程管理系统接口的出现,这种基于XML技术的餐饮系统通信接口具有很多的优越性,很大程度上促进了餐饮管理系统集成化的进程
9、。XML技术是一项国际标准,可以有效地统一现有餐饮管理系统中存在的多种管理接口。XML技术本身采用了简单清晰的标记语言,在管理系统开发与集成过程中能比简便地实施,这样新管理接口的采用反而还会降低整个管理系统的开发成本。1.4 课题需求研究随着餐饮服务行业的发展,产业信息化的步伐加快,餐饮行业的事务管理系统是非常必要且紧迫的。整个系统的目的在于:实现小型餐饮企业进行方便快捷的的餐饮事务管理与决策、提高产业效率,实现餐饮行业的科学管理。本系统主要包括前台营业和系统管理两大功能模块,两大模块中又分若干子模块。本系统拥有良好的用户接口,使用方便。具有完善的查询功能,对维护系统起到了辅助决策的作用,能及
10、时、方便、灵活的进行查询、修改、删除等维护性操作。系统拥有足够的存储容量,满足一般企业的营业需求,另外,系统通过对用户权限的设置,实现对操作用户一定程度上的管理。1.4.1 系统需求调研与一般的事务管理系统相比,餐饮事务管理系统的开发涉及到的环节比较多、业务关系比较复杂4、软件的应用环境由于企业用户的不同而有很大的差异,再加上行业服务个性化需求的不断被被企业重视,行业中尚未形成一套公认的运营标准。根据餐饮行业的传统需求,可以对小型餐饮的业务进行大体上的预测,最终可分析得出本系统典型的需求,其主体部分如下:(1) 系统必须包含一些基础的数据信息,作为本系统运行的数据基础。这些信息包括系统用户信息
11、、房台信息、商品信息。(2) 对于小型餐饮企业,对于客户的服务在于对客户的预订、开台、点单以及收银结账等基本服务。(3) 在前台,操作用户能实时的查看吧台的酒水库存。(4) 系统能进行企业营业额的查询与统计,帮助管理层对经营方式方法的改进。(5) 系统应该可以对基础数据进行维护以保证系统正常的运行。(6) 系统客户端运行在Windows平台下,并且有一个较好的图形用户界面,方便不同水平用户的操作。1.4.2 系统需求分析根据对课题的调研结果进行分析,可以得到系统的需求分析如下:(1) 用户权限管理。餐厅的经理可以使用系统所有的功能,即前台营业和系统管理两大部分。而一般用户只能进入前台营业部分。
12、所有的用户都可修改自己的密码,而经理也可以修改其他用户的密码。(2) 数据维护功能,能对数据库进行数据备份和数据恢复操作。(3) 可以添加、修改和删除餐厅的商品信息,同时也能进行商品的查询操作。(4) 可以添加、修改和删除餐厅的房台信息,同时也能进行房台的查询操作。(5) 实现对餐厅房台的各种管理功能,能对顾客的开台和预订进行有效地管理。如实现对房台预订的新加、删除、今日预订的查询等操作。(6) 当出现转台或并台的意外需求时,能满足客户对类意外行为的需求。(7) 顾客就餐时,实现分别针对各个房台的消费信息管理,从点单操作的点菜、加菜和退菜到房台的结账收银等操作。(8) 对结账账单进行管理,.查
13、看已结账账单,实现对结账账单的查询与统计营业额的操作。(9) 操作员能实时掌握吧台酒水的库存情况,有初步的库存预警功能。(10) 采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。(11) 有很好的可扩展性,可根据实际情况实现新功能的添加。有良好的安全性,应用系统时需要通过登录界面。1.5 课题预期目标(1)流程简便:本系统在设计时考虑到餐饮业的从业人员素质相对较低,年龄相对较小和从业人员密集性强以及生产和销售同步的行业特点等原因,所以在设计流程时,特别考虑到用简便的操作流程,让用户一接触便能掌握系统使用方法。(2)操作规范:本系统在各个事务功能之间的信息传递和操作方面采
14、用了统一的数据模式和标准的操作方法,让数据传递更加规范。(3)记录精确:本系统对各种繁杂的信息(房台和商品之类的信息)进行了规范的编码,这就会在操作过程中使各种记录更加准确。(4)管理高效:使用本系统能大量降低人员配置和工作量,加快信息的传递和汇总生成,在降低运行成本的同时还可提高工作和管理效率。第2章 系统分析与设计在小型餐饮企业中运用计算机管理系统,首先能在业务流程上,加快餐饮事务的运营速度,提高房台的利用率,同时,还可降低各部门员工的劳动强度,使员工能更好地为客人提供服务。其次还能为饭店的经营者提供较为详尽的营业数据作为决策依据以及可以实现对员工以及其工作业绩的有效管理,降低企业的劳动力
15、成本。 通过使用餐饮事务管理系统,动态掌握房台和商品的实时数据,不仅使企业的运营流程正规化,还能完善对客户的销售服务,最终提升企业的同行竞争力。为此,建立一套餐饮事务管理系统是必要的。2.1 系统可行性分析(1)管理上的可行性管理上的可行性,是指管理人员对开发应用项目的态度和管理方面的条件。 传统的餐饮事务是通过手工操作完成的,这个过程中出现的问题使企业管理层人员意识到了以人力为主体的事务管理上的局限性,在提出管理信息系统的解决方案后,管理人员可以更加方便的调配前台服务的人力、物力资源,并能通过系统查看企业经营的成果,更快的对企业市场做出管理决策。使用事务管理系统后,可以加快营业处理速度,规范
16、营业流程,从而提高顾客满意度,这对提高营业额是很大的一个刺激。因此管理人员对此项目应用的态度应该是积极地支持的。故系统在管理上是可行的。(2)技术上的可行性技术上的可行性,是指分析当前的软硬件技术能否满足系统提出的要求。 本系统是连接本地数据库的单机版餐饮事务管理系统。开发语言上选择C#,为一种面向对象开发语言,对于需求变化和后期维护支持性好,具有较高的安全性能。采用WIndows窗体应用程序设计客户端的界面和事件,方便易操作。数据库采用SQL Server,与C#兼容性好,并且免费,对处理小型餐饮企业的数据量已经绰绰有余。故系统在技术上是可行的。(3)经济上的可行性经济上的可行性,主要是预估
17、费用指出和对项目的经济效益进行评价。 本套系统的运行也无太大特殊性要求,并且此套系统因学习所用而开发,无需开发费用,即后续软件投资可免,故经济上是可行的。2.2 系统目标在进行系统的需求分析和可行性分析后,就可以在此基础上,对餐饮事务管理系统做系统设计,解决实现该系统需求的程序模块设计问题。本系统属于小型的餐饮事务管理系统,可以有效地对小型餐厅消费进行管理。以达到以下目标:(1) 登录管理:可实现用户登录和密码修改的操作。(2) 使用说明:显示系统的版本号、版权,以及软件使用的一些注意事项等信息。(3)系统管理:分为商品设置、房台设置、用户管理和数据维护四个部分,分别实现前三部分的增、删、改、
18、查功能和数据维护部分的数据备份和数据恢复功能。(4)前台营业:包括房台管理、房台预订、账单管理、吧台库存和消费管理五大部分。房台管理,可实现根据需求显现不同类型和状态的房台,同时进行开台、清台操作,还能根据客户的需要对已开台的房台进行转台和并台操作;房台预订,可实现对房台预订的增加、撤销、开启、暂停、预订开台和今日预订的查询。账单管理,可实现对已结账账单的查看和根据用户需求进行结账的查询和营业额的统计(可根据日期、房台类型和具体房台进行营业额的统计)。吧台库存,实现对吧台酒水库存的显示和查询,能对少于一定数量的酒水进行库存的预警。消费管理,可实现对各个消费房台的点单信息的操作,实现菜单的点菜、
19、删菜、加菜和退菜操作,实现消费房台的收银结账。2.3 系统总体设计2.3.1 系统功能结构餐饮事务管理系统的功能包括系统登录、前台营业、使用说明和系统设置四大功能模块。系统登录模块要实现用户登录和密码修改两大功能;前台营业模块要实现房台管理、房台预订、账单管理、吧台库存和消费管理五大功能;使用说明模块即是实现软件的使用信息的查阅;系统设置模块要实现用户管理、商品设置、房台设置和数据维护四大功能。餐饮事务管理系统功能结构图如图2.1所示。图2.1 餐饮事务管理系统功能结构图2.3.2 系统业务流程用户进入系统的登录界面后,如果登录不成功会提示用户重新登录,而在用户登录成功后,系统进入到系统的主功
20、能界面。系统根据用户的使用权限判断用户是否能进入系统管理,如用户是一般用户,系统会对登录用户禁用系统管理功能,使用户只能进行前台营业和查阅使用说明的操作;如果用户是管理员,则用户能使用软件的所有功能。最后,在用户使用软件完毕后进行系统的退出操作,从而结束系统流程。餐饮事务管理系统业务流程图如图2.2所示。2.2 餐饮事务管理系统业务流程图2.3.3 系统用例图系统的使用用户分为一般用户和管理员两类,其中一般用户可以使用除系统管理外的其它系统用例,而管理员用户可以使用系统的所有用例。餐饮事务管理系统用例图如图2.3所示。2.3 餐饮事务管理系统用例图2.3.4 系统运行环境餐饮事务管理系统在运行
21、中的具体环境如下。系统开发平台:Microsoft Visual Studio 2008 。系统开发语言:C#。数据库管理系统:Microsoft SQL Server 2008。运行平台:Windows XP/Windows Vista/Windows 7。运行环境:Microsoft.NET Framework SDK v2.0。分辨率:最佳效果 1024768像素。2.3.5 系统构架的设计鉴于本课题研究的餐饮事务管理系统是面向小型餐饮企业的,从系统的响应速度和业务流程的复杂性上考虑,由于设备条件限制,所以决定借鉴C/S构架,开发餐饮事务管理系统的客户端,连接单台PC机上SQL Serv
22、er数据库实现的相关业务操作。2.4 系统功能分析一般情况下,餐饮企业通常有两种消费群体:实时用餐客人和预订用餐客人。无论是实时用餐客人还是预订用餐客人,餐厅在对其进行服务时都要经历“开台点单结账”的过程,因此餐饮事务管理系统在功能设计是应该重点突出开台、点单、结账等主要管理事务功能,并根据需要添加相关的查询、统计数据的功能,从而为餐饮企业的管理和发展提供强有力的支持。2.4.1 登录模块1、登录功能分析登录模块用于操作用户根据授权的用户编号和用户密码登录餐饮事务管理系统。同时在登录界面设置密码修改功能方便所有用户更改密码。在用户登录成功后,将通过登录的用户编号找到该用户的使用权限,从而严格控
23、制用户的操作权限。在登录界面就要退出系统,可以通过“取消”按钮或登录窗体右上角的“关闭”按钮进行退出操作,退出时会有询问是否退出的信息提示对话框,单“确定”按钮后退出系统。2、密码修改功能分析密码修改功能用于使用餐饮事务管理系统的当前用户修改自己的登录密码。在登录界面选择修改密码的超链接后,进入到修改密码的对话框,在用户输入用户编号、旧密码、新密码和重新输入一次新密码后点击确定便可更改自己的登录密码。如果用户忘记自己的密码,则只能求助于系统管理员的帮助,查询自己的密码。2.4.2 使用说明模块使用说明模块用于声明当前餐饮事务管理系统的版权信息或其他帮助信息。要进入使用说明界面,可以选择主界面下
24、的“使用说明”选项。2.4.3 系统设置模块1、商品设置功能分析商品设置功能用于系统管理员对商品进行相关的操作,可以对商品进行添加、删除、修改、查询操作。要进入商品设置界面,可以选择主界面下的“系统管理”,再选择“商品设置”的选项。2、房台设置功能分析房台设置模块用于系统管理员对房台进行相关的操作,可以对房台进行新加、删除、修改和查询操作。要进入房台设置界面,可以选择主界面下的“系统管理”,再选择“房台设置”的选项。3、用户管理功能分析用户管理模块用于系统管理员对用户信息进行相关的操作,可以对用户进行新加、删除、修改和查询操作。要进入用户管理界面,可以选择主界面下的“系统管理”,再选择“用户管
25、理”的选项。需要注意的是,此处的修改是管理员对用户的所有信息的修改操作,与登录界面的密码修改有区别。4、数据维护功能分析数据维护模块是管理员对数据库进行维护的相关操作,可以对选定的数据库进行备份和并在备份后能进行数据库恢复操作。2.4.4 前台营业模块1、房台管理功能分析房台管理模块用于前台营业员对房台进行管理。可以实现显示不同类型和状态的房台,方便用户选择房台。用户在选择主界面下的“前台营业”后,便进入了房台管理界面,在选项卡“房台显示”上显示的是房台信息,在选择房台后,点击选项卡上的“进入”按钮后,系统能根据房台的不同状态进入不同的界面,如房台为“空闲”时,进入开台界面;房台为“预订”时,
26、会询问是否进入预订开台界面;房台为“禁用”时,会弹出禁用提示;房台为“结账”时,则会弹出询问是否清台的提示。如果已开台的客户需要需要对房台进行转台和并台,则在选中“开台”状态的房台后点击“转台/并台”按钮,进入“转台与并台”操作界面。2、房台预订功能分析房台预订模块用于前台营业员对房台的预订操作。可以实现新增预订、撤销预订、预订开台、预订开启、预订暂关和显示今日预订信息的操作。用户在选择主界面下的“前台营业”后,进入了房台管理界面,在选项卡“房台预订”上显示的便是房台的预订信息。预订开启是将预订的房台状态正式由“空闲”转为“预订”状态,而预订暂关则是将预订的房台由“预订”转为“空闲”状态。因为
27、预订涉及到时间问题,所以这两项功能是为对预订房台进行灵活的操作,达到预订使用的人性化。3、账单管理功能分析账单管理模块用于前台营业员对账单的相关操作。在显示账单的同时,可以进行今日结账的查询和今日营业总额的统计。用户在选择主界面下的“前台营业”后,进入了房台管理界面,在选项卡“结账账单”上显示的便是所有已结账账单的信息。4、吧台库存功能分析吧台库存模块用于吧台管理员实时掌握吧台酒水的库存量。在实现根据酒水名称对酒水信息进行查询的同时,系统还能自动对低于系统预设酒水存量预警线的酒水进行变色显示。5、消费管理功能分析消费管理模块用于前台营业员对已开台房台各种管理操作。可以实现对房台菜单的点菜、减菜
28、、删菜、加菜、退菜、清单、落单、商品查询、消费明细查询和收银结账操作。在通过房台管理模块进行开台设置后便进入此模块。所点的菜单在经过落单操作后才会将消费信息传递到收银界面,消费总额是菜单的消费总额,并不含房台的计费方式的收费,而为了实际收银操作中的人性化操作,故在收银部分增加了“加收”和“优惠”这两个消费规则外的结账计算金额。使收银在规范化的同时人性化。在操作员工选择折扣率后,系统会计算出结账金额也就是待收金额。在输入实收金额后,点击“收款确认”,系统会计算找零金额,使收银操作方便快捷,最后点击“结账”,系统会更新数据库,并退出开台房台操作界面,返回房台管理界面。2.5 公共模块设计2.5.1
29、 公共模块概述在开发项目中以类的形式来组织、封装一些常用的方法和事件,不仅可以提高代码的重用率,也可以大大方便代码的管理6。本系统中主要创建了公共类DBConn.cs,其中的DBConn类主要用来访问SQL Server数据库并返回基本的ADO.NET对象。程序开发时,窗体只需要调用相应方法即可。2.5.2 DBConn类DBConn.cs类文件中,首先要引用using System.Data.SqlClient,用来连接数据库以及执行之后的数据库操作。这里的数据库操作主要是指CyCon()方法对数据库的操作,它是一个返回值为SqlConnection类型的自定义方法,主要用来建立数据库连接。
30、2.6 系统主要功能技术分析2.6.1 登录功能技术分析运行系统的登录模块后,用户需要输入用户编号和用户密码,单击“登录”按钮进行验证。登录模块首先判断是否输入了用户编号和用户密码,如果没有输入系统将会弹出提示对话框,提示用户输入登录系统的用户编号和密码;在用户输入了用户编号和密码后,登录模块以用户输入的用户编号和用户密码作为搜索条件,在数据库的用户信息表中进行查询。使用SqlDataReader对象的Read()方法判断登录用户编号和密码是否正确。如果Read()方法返回的值为true,则表明SqlDataReader包含一行或多行;否则返回值为false。此处因主意:每次打开一个新对象,必
31、须关闭前一个DataReader对象13,因为它是以独占方式与数据库交互,否则,会接收到其产生的异常。登录模块的验证方法有很多,除了上述的方法外,还可用SqlDataReader对象的HasRows属性进行验证14,通过HasRow属性获取一个值,该值指示SqlDataReader是包含一行或多行。还可以通过COUNT聚合函数15进行验证,直接统计满足条件的行数,行数大于0表明输入的用户名编号和密码在信息表中是存在的,即通过了验证。2.6.2 主界面技术分析在登录成功后,通过欢迎界面后,便进入到主界面窗体。主界面窗体由于选择了背景,为了美观的需要将窗体的FormBorderStyle属性设置为
32、None,去除边框和标题栏。主界面上为了简洁只布置4个功能选项,运用pictureBox的Click事件,实现功能的选择,为了丰富控件的视觉效果,在pictureBox上设置MouseEnter和MouseLeave两个事件,控制pictureBox的Top属性,实现鼠标进入和离开控件时的动态效果。2.6.3 系统管理模块技术分析这一模块包括了四个子模块:商品设置、房台设置、用户管理和数据维护。前三个子模块功能的操作内容都是针对数据库的增、删、改、查这些基本操作,并且三个模块的界面基本相似,下面就以商品设置功能为例说明其使用技术。商品设置界面的主体部分是商品信息DataGridView控件和实
33、现增、删、改、查等功能的Button控件。商品信息DataGridView的SelectionMode设置为FullRowSelect以方便选择。在选择后商品信息将显示到下方对应的文本框中,已进行进一步的操作。这部分涉及到显示数据库信息的操作,因此在用DateSet时,因注意相应的DateTables在显示时是否为空,如不为空要先用Clear()方法清空,再调用Fill()方法进行填充,再显示到DataGridView控件中。在修改和更新商品信息表时,应注意,商品库存字段是可为空的,在默认不输入字符在其对应的商品库存文本框时,数据库会默认为存为空字符串,而非数据库中的“NULL”,这就会造成在
34、之后查询时,如果商品库存的输入文本框不填,查询的结果就会一直有新更新的这一项内容。(同理,要注意进行房台设置的修改和添加操作时,房台位置也是一项可为空的字段。)数据维护部分是对数据库进行备份和恢复的操作17。对于数据库的备份直接用“backup database”语句将要备份的数据备份到指定的目录中去,而在数据库恢复时要注意:当恢复模式设置为完整时,如果前面备份数据库没有备份数据日志文件,在之后恢复时,直接恢复会出错。此时,可以在前面备份时连日志一起备份,或者在恢复时使用 RESTORE 语句的 WITH REPLACE 或 WITH STOPAT 子句来只覆盖该日志的内容。2.6.4 前台营
35、业模块技术分析前台营业模块包含了:房台管理、房台预订、账单管理、吧台库存和消费管理这几大部分,是此餐饮事务管理系统的核心部分。从整个界面上可以看出,系统并没有使用一般界面都有的菜单栏,这是从简化操作上考虑的,因为之前已经用主界面分担了系统功能的安排,此处的前台营业也就不需要操作不便的菜单栏,而直接将一部分功能布置在窗体的主体部分。1、房台管理从系统主界面的“前台营业”进入到前台营业的界面时,从登录界面传来的用户信息会显示到营业界面上,显示出员工姓名和操作权限。显示用户信息下方的dateTimePicker1控件是一个重要的控件,它的存在不仅是为用户动态的显示当前的时间,还是起到操作员工在开台房
36、台或预订房台时生成消费编号和预订编号的作用,因为这两个编号都是取时间数字的字符串在前加上“XF”或“YD”。这不仅是为了数据处理时的方便,也是为了用户查看时能一目了然的知道客户消费等活动的具体时间。在选项卡的左边是关于房台的选择的功能按钮,它们包含了用户最常查询房台类型和房台状态两类按钮,方便用户在“房台显示”的选项卡中选择出所需的房台。单击房台信息DataGridView控件内容后在其下方的选择房台的文本框中会显示出点击选择的房台编号,表示已选择房台,这时点击其后的“进入”、“预订”或“转台/并台”才会有效。对于选择的房台,其状态的不同,在点击“进入”按钮后会有不同的效果,这是通过调用SQL
37、查询语句后用SqlDataReader对象的Read()方法判断出不同房台类型从而实现不同的操作。对于“空闲”房台,进行的是开台的操作;对于“开台”房台,进行的是房台消费管理操作,进入房台操作界面;对于“预订”房台,进行的是预订开台操作;对于“结账”房台,进行的是清台询问操作;对于“禁用”房台,则进行的是禁用提示操作。同理,在用户选择要预订的房台后,点击“预订”按钮,则会进入房台预订的界面,这里设置预订按钮是为了方便操作人员对照房台列表进行预订,不用记住相应的房台编号再进入“房台预订”选项卡进行预订。同理,在用户进入“转台与并台”界面后,可对进入前选择的已“开台”房台进行操作。转台,即将原已开
38、台的当前房台转到空闲的目标房台中去,将空闲的目标房台设置成“开台”,而将原已开台的当前房台设置成“空闲”。并台,即将原已开台的当前房台并入到所选的已开台的目标房台中去,将当前房台重新设置成“空闲”。转台时,能否成功进行转台,主要是比较当前房台客户人数和目标房台的建议使用人数。当当前房台的客户人数高于目标房台建议使用人数一定值时,是不能进行转台的。在转台人数满足要求时,转台操作实际上主要是对当前房台的点单信息进行“点单房台”的替换,以及消费信息中“消费房台”的替换。替换的方法是采用SQL中的UPDATE更新语句直接进行更改。并台时,也要进行客户人数的统计,当所并得两房台的总人数多于目标房台的建议
39、使用人数一定值时,同样是不能进行并台操作的。在并台人数符合条件时,并台的重点工作也是在点单信息的合并上,在进行合并时,采用for循环逐行的对当前房台的点单信息进行合并操作,循环的次数是循环次数是点单消费列表的行数(用Count函数统计),合并的顺序是按照点单的时间先后进行的,最近点的(时间的先后在SQL语句用Max函数进行判断)商品用insert语句将其信息添加到目标房台的点单信息表中,然后在当前房台的点单信息表中删除本条商品的消费信息。如此进行循环,逐一将当前房台的点单信息添加到目标房台点单信息中,之后再用UPDATE语句对目标房台的客户人数进行修改并将当前房台的状态改为“空闲”,最后用DE
40、LETE语句删除当前房台的消费信息。2、房台预订在“房台预订”选项卡里设置按钮“显示今日预订”是为了方便用户查看今日预订信息从而有所准备,提前安排好预订客户的消费活动。显示今日预订的实现是在数据库查询中使用获取日期时间的间隔数方法DateDiff(),选出日期与系统今日日期间隔数为0的预订信息即可。3、账单管理在“结账账单”选项卡里的查询营业额是通过用户填写“开始日期”、“截止日期”、“房台类型”和“房台编号对满足填写条件的账单的营业额进行统计的,两个日期是用dateTimePicker控件进行日期选择的,它们不可能为空,而“房台类型”和“房台编号”两项可选填。在满足“开始日期”小于等于“截止
41、日期”小于等于“当前日期”,并且剩余两项查询条件正确(可为空和两项信息正确)时,便能进行营业额的统计。在查询语句中,对满足条件的结账时间是用“betweenand”语法实现筛选,在选择正确房台类型和房台编号后,再用sum函数实现数据的统计。对于同时填写了“房台类型”和“房台编号”两项条件情况的处理方法是:若“房台编号”对应房台的类型与所填的“房台类型”一致时,只按“房台编号”条件进行统计;若“房台编号”对应房台的类型与所填的“房台类型”不一致时,则在统计所填“房台类型”的房台的营业额后同时加上所填“房台编号”对应房台的营业额,以两者之和作为统计结果。4、吧台库存在“吧台库存”选项卡里显示的是吧
42、台的酒水库存情况,此界面是用用Select语句将商品信息表中的酒水类商品选择出来显示其库存,考虑到员工有时需要查询特定的商品,故选用商品名称来检索特定的商品,并用DataGridView的CellFormatting()事件来预警库存量低于一定值得商品,将库存量不足的商品所在行的背景颜色设置为红色,以达到预警的目的。5、消费管理在进入消费管理界面后可以看出,此界面是具体到消费房台的点单和收银操作界面。进入此界面后可以看到是哪个房台在进行消费,消费房台的名称是通过进入此界面之前的开台设置界面或前台营业界面中的“房台显示”选项卡房台选择传递来的数据信息。这样才能保证营业用户管理的准确与方便。窗体中
43、的dataGridView1控件是用于显示消费房台所点的菜目信息,包括消费商品的名称、数量和价格,在其下方是方便操作员快捷修改菜单的快捷功能按钮,包括选择商品数量加1和减1、选择商品的删除点单和点单列表的清空重点,而这4个功能按钮的正常使用必须是在所点菜单尚未落单的情况下使用的,“落单”按钮在此4个按钮之后,它不仅关系到点单的确认,还关系到收银结账功能的实现。在窗体右侧的“商品显示”选项卡中有用户进行商品选择的商品信息DataGridView控件,在单击一项商品后,输入顾客所点数量单击“确定”便实现点菜功能。此项点菜功能在点单列表落单后失效,要加菜或退菜则只能用“加菜”或“退菜”按钮实现。当涉
44、及到酒水的点单时,商品的库存更新便是一项难点,因为商品信息列表和点单信息列表中的酒水数量是“你增我减,你减我增”的关系。难点一,单一酒水项目数量的改变只需在此表中改变数量,并在彼表中作出对应的改变即可,而当运用“C”(清空列表)按钮时,则可能涉及到多项同时修改的问题,此时,运用for循环一项一项逐一删除,循环次数是点单消费列表的行数(用Count函数统计),删除的先后是以点单时间的先后删除,时间的先后用Max函数判断。难点二,在退菜时,同一酒水由于被加点多次而存在多行信息,当所退此酒水数量大于最后一次甚至最后几次加点是的数量时,为了准确修改点单列表和商品列表库存,此时也用for循环进行退菜,直
45、到所退酒水数量退完。修改点单列表上此酒水点单信息的先后同样采用Max函数判断点单时间的先后,总是先退最近点的,实现“最近点最先退”。在“收银结账”选项卡上进行的是消费房台的收银结账功能。进入此选项卡后,再次点击“落单”按钮,界面上为自动生成“结账编号(同消费编号和预订单号生成原理相同)”、“结账房台”、“消费总额”和“房台费用”,再选择折扣率后,系统会根据“消费总额”、“房台费用”、“加收”和“优惠”计算出“结账总额”即“待收”金额数目。收银员工在输入“实收”金额后,点击“收款确认”,系统会算出“找零”金额,方便用工找零。最后点击“结账”按钮,数据库会更新房台信息中的此消费房台为“结账”状态,
46、增加此房台的消费信息和账单信息。在“消费明细”选项卡中显示的是对房台点单信息的详细补充,增加了“单项消费总额”和“点单备注”两项内容。可以方便操作人员对客户进行解释,其下方有“打印预览”按钮,可以进行账单的打印预览。它是通过使用PrintPreviewDialog组件实现的,此组件是预先配置的对话框,用于显示PrintDocument组件在打印时的外观20。2.7 本章小结本章的主要内容是对餐饮事务管理系统进行系统分析和设计,首先要对此系统可行性和系统目标进行分析,然后再进行系统总体设计,其主要包括对系统功能结构、系统业务流程、系统用例图、系统运行环境。最后在完成系统的功能分析后进行系统公共模
47、块的设计以及系统的主要模块的技术分析,技术分析的内容包括:登录模块、主界面模块、系统管理模块(含子模块)以及前台营业模块(含子模块)。系统的总体设计和功能分析是为数据库设计做准备,而通过系统的详细技术分析,达到分析程序技术难点促使系统编码快速完成的目的。第3章 数据库设计数据库结构设计是否合理,将直接影响到系统的应用。合理的数据库结构设计可以提高数据库存储的效率,保证数据库的完整性和一致性。餐饮事务管理系统就需要一个合理、安全的数据库系统5。3.1 概述在对餐饮事务管理系统进行总体架构分析和详细功能分析完成后,接下来就要进行数据库的分析和设计。分析该系统的数据量后,可以知道由于餐饮管理系统的数据较多,商品信息、房台信息、点单信息以及账单信息会占用较大的空间,因此选择Microsoft SQL Sever 2008 数据库存储这些信息,数据库命名为Cy。设计数据库系统时首先要充分了解用户各方面的需求,包括现有系统以及将来可能增加的需求。3.2 数据库的需求分析 针对餐饮事务管理系统的需求,通过对餐饮管理的业务流程的分析,需要设计如下的数据字段和数据表。(1) 用户信息表:包括的数据字段有用户编号、用户名、用户密码和用户权限,其中用户编号是关键字。(2) 商品信息表:包括的数据字段有商品编号、商品名称、商品类型、商品
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100