版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于.NET技术的餐饮管理系统设计与实现摘要在当今信息时代的快速发展,一个餐馆、酒店的管理和高效的运行需要专门的餐饮管理系统,利用餐饮管理系统,可以高效的处理每天的就餐人数,用可视化、数字化的方式管理顾客消费的情况,用系统化的手段完成对顾客就餐情况的管理,提高餐饮管理者的工作时效,采用人机交互和简化管理手段为目标,实现餐饮管理的升级,来推进餐饮的信息化建设。该客户端软件基于.NET平台设计,选择C#作为开发工具,与后端数据库系统SQLITE结合,遵循系统调查研究、系统分析、系统设计和系统实施四个阶段进行设计,实现客户信息输入,修改和删除,并且可以对顾客身份级别和消费情况的增加、修改、删除等操作,又能对所有顾客信息进行统一管理。整个系统从餐饮管理者需求出发,根据实际情况,为从事餐饮工作者专门设计了一套符合实际需求、十分行之有效的顾客消费信息管理系统,包括点餐管理、餐厅包房管理、订单消费管理、进销货情况管理、酒店财务管理等功能,从而大大提高了工作效率。关键词:信息管理;C#;SQLITE;消费;结账;1引言1.1选课背景及意义现如今,中国的经济飞速发展、国民生产总值不断提升,人民对生活物质的需求也不断增加,大众的消费方式发生迅速改变,餐饮已经成为了一种娱乐、一种放松、一种快乐。餐饮行业也越来越火爆,出现了爆发式的增长。现在,随着人民生活水平的不断改善,餐饮服务行业的消费量也在与日俱增,每天在大客流面前,行业内部竞争也不断日趋激烈。但是许多餐饮管理者依然采用原先纯手工的传统管理方式,传统餐饮个人的日常操作仍然是人工管理的,从进出货物的仓储到客人的订购,再到基本上由人工记录完成的结帐,这不仅消耗了人力和时间,而且容易发生记录缺失,损毁或重复的失误,从而导致低的管理水平和效率,已经不能满足日新月异餐饮行业的管理要求。进入21世纪,信息时代的飞速发展,科学技术水平不断进步,计算机也得到了飞速的发展。计算机科学与技术正变得越来越成熟,其强大的功能让人们深深的知道,它已经进入人民的社会生活的各个领域并发挥了非常巨大的用处。越来越多的经营者已经意识到科学技术信息管理的重要性。所以科学化、信息化管理是21世纪餐饮行业的潮流。餐饮顾客人数庞大,信息管理将不可避免地成为餐饮管理的重要组成部分,还需要一个高效的信息化、标准化管理软件。通过人工的手段完成对顾客信息的记录、修改和删除,餐饮信息管理系统是基于餐饮个体经营者和企业及公司的实际需求而设计的,以为餐饮工作者提供充足的信息和快捷的查询管理手段为目标,提高工作者的工作效率。餐饮服务系统于是诞生于这个机会,作为计算机应用程序的一部分,它使用计算机来执行餐饮业务的信息化,数字化和可视图化操作,比传统的手工管理有很大优势,它将消费服务中点餐、结账、销售管理、房桌管理、成本核算等一系列业务配合计算机管理,实现了便捷化、数字化和高效化的消费管理体系。该餐饮管理客户端软件采用图形化、可视化、形象化的用户界面,界面简洁,明了,友好且易于操作,可对顾客所点的菜单进行准确地记录和结算,也可对餐厅本身的货物使用情况等信息进行明细的记录。总之,它可以大大减轻餐饮服务员的劳动强度,提高劳动者的工作质量和速度,还可以提升酒店的运营管理能力,从而提高酒店本身的知名度和管理水平。1.2课题的研究内容本实验项目是设计开发一个基于.NET平台,C#与SQLite相结合编写的一款餐饮管理客户端软件。这个软件属于一个小型消费管理程序,非常适合个体经营者和小微型企业进行操作使用。该软件有以下几大优势:软件体积很小、功能齐全,运用人机交互的方式,界面简洁明了,信息操作简单容易,客户信息资料安全可靠存储。主要功能如下:(1)顾客点单;(2)增加消费;(3)顾客买单;(4)会员管理;(5)商品管理;(6)房间管理;以上六大基本功能,基本包含了餐饮工作者日常的绝大多数工作情况,该系统学习使用起来也比较容易,适合很多年龄段的工作者操作使用,轻松的掌握顾客的消费信息,提升饭店的运营速度,也能使职工更好的为顾客服务,增加顾客的满意程度。1.3论文章节的介绍全篇文章以围绕.NET为环境,从.NET的内容、架构体系等层面,来讲述基于.NET平台,C#和SQLite相结合所开发的简单餐饮管理客户端系统的设计与构建思路。第一章绪论叙述了文章的选课背景与意义和该项目的功能及所涉及和解决的问题。第二章主要讲解C#和SQLite有关技术。第三章主要介绍程序的分析和相关需求。第四章详细介绍系统设计包括客户端的总体结构、顾客开单、增加消费、宾客结账、会员管理、商品管理、房间设置等模块。第五章讲述系统的实现,包含数据库的连接,登录模块和主窗口的实现,以及相关模块的补充说明。第六章对产品进行相关的总结和评价,以及后续相关功能的扩充,让客户端系统功能更加完善,更加友好好用。2相关技术介绍2.1C#简介C#是Microsoft在2000年7月发布的一种新的、简单、安全的面向对象编程语言。它具有高度安全性,简洁的语言,面向对象等特点,是专门为.NET语言程序开发的。它吸收了C++、VisualBasic、Delphi、Java和其他语言的优势,反映了最新编程技术的功能和实质。C#继承了C的语法风格以及C++的面向对象性质。不同之处在于,已使用.NET框架的类库为Internet重新设计了C#的对象模型。C#更强大,因为它不再支持指针类型,这使得程序无法随意访问内存地址空间。C#不再支持多重继承,避免了先前类层次结构中多重继承的可怕问题。.NET框架为C#提供了功能强大,易于使用的逻辑结构化编程环境。同时,公共语言运行时为C#程序语言提供了托管的运行时环境,使该程序比以往任何时候都更加稳定和安全。它具有以下特点:语言简单,保留了C++的强大功能,快速的应用程序开发,语言自由,强大的Web服务器控件,跨平台支持以及与XML的集成[1]。C#是从C和C++派生的安全,稳定,简单,优雅,面向对象的编程语言。它继承了C和C++的能力,同时消除它们的一些复杂的功能(例如无宏和模板,多重继承的不允许)。C#将VB的简单视觉操作与C++的高操作效率相结合,以其强大的操作能力,优雅的语法风格,创新的语言功能以及对面向组件编程的便捷支持,使其成为.NET开发的第一手语言[3]。C#为.NET平台量身定制了一种面向对象的语言,它类似于Java属于从C++演变(以提取C++的优点,放弃了一些开发人员的底层操作)的语言,同时.NET平台的主要语言C#也学到了一些其他语言的功能,如C#、C++、Java和VB,这些语言的混合,吸收各种语言作为一个整体的本质[1]。包括如下特点:(1)C#是一种完全面向对象的计算机语言。使用面向对象的方式允许我们使用真实世界的物体模型来描述我们的计算机程序的开发方式,使我们的编码有条不紊,更有效地开发和运维。(2)C#消除了诸如C++中的指针,从而大大降低了程序的开发复杂性。此外,它还提供了垃圾回收器来管理内存,因此程序员不必使用C++的Delete关键字破坏内存,不必担心释放内存会降低开发的复杂性[2]。(3)基于接口的编程技术的支持,可以实现系统的松散耦合,并有利于以后升级和软件的扩展。2.2SQLSERVER简介SQLite是一个轻量级数据库,是一个进程内库,可实现自包含,无服务器,零配置的事务型SQL数据库引擎。这是一个零配置数据库,这意味着它不需要像其他任何数据库一样放置在系统中。像其他数据库,SQLite引擎不是一个独立的进程,并根据需要由所述应用程序可以被静态或动态地连接。SQLite直接访问其存储文[6]。SQLite是D.RichardHipp用C语言编写的开源嵌入式数据库引擎。SQLite是一个小型的,轻量级的数据库,相对较小但功能丰富,它还具有流行数据库的一些基本功能。它支持大多数SQL92标准,并且可以在所有主要操作系统上运行。由于Android操作系统仅占用极少的系统资源,因此也主要使用SQLite提供的数据库引擎[5]。SQLite是一个SQL数据库引擎,支持自包含的零配置事务。它具有高便携性,易于使用,编排紧凑,效率高和可靠性高的特性。不像其他的数据库管理系统,SQLite是安装和运行非常简单,而且在大多数情况下,你只需要确保SQLite的二进制文件存在便能开始创建,连接和使用数据库[5]。SQLite具有以下优势: (1)不用构建单独的服务器进程或操作(无服务器)的系统。(2)SQLite不需要配置,相当于没有安装或者需要给予。(3)完整的SQLite数据库储存在单个跨越操作平台磁盘文件中。(4)SQLite非常小巧轻便,完全部署时为400KB或以下,而没有可选功能的部署时为250KB或以下。(5)SQLite是自包含的,就是说不需要任何无关外部的依存关系。(6)SQLite事务与ACID完全兼容,从而准许多个进程线程保险箱进行访问。(7)SQLite支持SQL92(SQL2)标准的大多数查询语言的能力。(8)SQLite是编写在ANSI-C,并提供一个简单,易于使用的API。(9)在UNIX(Linux操作系统,iOS版,MACOS-X的Android)和Windows(Win32,WinRT,WINCE)可以运行SQLite。3业务需求分析3.1系统需求分析随着我国人均GDP的不断增长,人民的人均收入也在不断增加,饮食消费成了人们的一种消遣放松方式,周末假期朋友家人聚餐成为常有的事。由此带动了餐饮服务行业的爆发式增长。由于传统的纯手工记录方式,已经无法满足餐饮服务业不断增长的需求。为了提高用餐服务的质量和效率,诞生了一种基于计算机的先进的用餐管理系统,方便餐饮管理者和工作者进行管理,也方便消费者进行查看消费详情。对于一个餐饮管理软件,第一就是要设置餐饮工作者权限,设置一个管理员,来对餐饮管理客户端进行操作。设置完用户名密码之后,服务人员就能进行登录了,然后进行顾客信息,账单信息和结账,以及货物和房间信息进行管理,包括录入、修改、删除等操作。餐饮管理系统是一个效率高、便捷的程序,依靠强大的计算机和飞速发展的互联网等资源,与传统的手工方式对比具有十分明显的优势。它可以降低工作者的工作强度,减少员工人数,也可以降低经营者的成本,使工作者效率和服务质量得到提升。3.2分析流程图项目内容:此系统主要有以下几个模块组成,服务员登录模块,房间桌台管理模块,商品菜单管理模块,点菜功能模块,会员管理模块,以及顾客消费结账模块。
管理员登录模块:服务者是否为管理员,是管理员输入正确的用户名和登录密码登录即可。宾客消费结账模块:系统可以自动对消费情况进行结算,是不是会员,应收金额和优惠金额,是否免费和退单等功能。下面以管理员模块和顾客信息模块为例:图3-1管理员信息模块图图3-2顾客信息模块图当餐饮工作者在本店工作上班时,前台服务员可以对整个店铺的餐桌信息进行查看,可以对顾客、房间状态进行查询、增改、删除。对货物进行录入、修改、删除。查询客人点餐信息,增加消费,可以很容易的看到哪些房间的餐桌没有使用为客户选着合适人数的桌台,继而为客户开单、点菜等服务,顾客只需要记下自己的房间桌台号即可,用餐完毕用户通过餐桌号结账和查看自己的消费情况,是否会员用户结账。在设计一个系统的时候,要对该系统进行整体性、结构化分析,用数据流程图来体现,来描述程序处理数据的流程。用图形的形式来形象的表示输入和输出的过程,展现管理系统内部数据的走向,以及整个餐饮系统的操作执行的大体的过程。用数据流图也可以体现数据处理和传送的过程,展现了管理系统的逻辑处理模式。实现流程示意图如下:图3-3系统数据流图4系统设计4.1系统开发层次结构该系统的核心技术是三层架构原理、手写三层、商业级代码生成器、三层架构应用案例、MD5加密解密,SQLite数据库、观察者设计模式、NPOI、拼音检索[4]。复杂的项目不能将SQL语句直接写到接口中,也不是模块化的且难以维护,因此应运用三层体系结构。通过学习理解三层体系架构的好处,Web开发中的三层体系结构也是如此。还有更复杂的三层和多层系统结构。三层:UI(接口,用户界面)BLL、DAL。该模型是三个层之间的数据传送。UI层调用BLL,BLL调用DAL,并且数据由模型传递,因此UI无法直接调用DAL。Model不是一个层。DAL层仅仅具有SQL语句和数据处理。其他层不应具有SQL语句和ADO.net相关的类。简单的BLL仅调用DAL。数据验证应放在BLL中。BLL也会组合DAL成新的操作,比如,更改密码[4]。DAL层中只要和数据库操作,BLL中才有具体的逻辑。三层和所有编写在一起的代码之间的区别就像拥有清晰分工的麦当劳和一起煮饭并一起出售的大米饼干之间的区别。三层通常会比没有分层慢,但为分工明确起见,性能下降的这么小的量是允许的,而且在许多情况下,效率通常不是唯一的要求。该系统采用三层架构的体系结构开发设计,三层思路如下图[5]:图4-1三层架构体系图4.2系统详细设计无论是餐饮管理人员还是普通员工要想进入管理系统,必须输入对的密码才能进入系统,进行一系列管理操作,只有这样可以保护整个系统安全,防止非法人员破坏内部的数据。在“员工”文本框中输入用户名,“密码”文本框中输入密码,单击“确定”按钮,触发点击事件,只有登录名和密码都输对了,才能进入系统主界面,然后进行一系列的操作。若用户输入或密码错误,系统将给出错误提示信息,进入不了系统。登录操作设计图如下所示:图4-2系统登录界面流程图4.3数据库SQLITE的配置App.config文件的配置如下:<addconnectionString="DataSource=cater.db;Version=3;"name="conStr"/>命名空间的导入usingSystem.Data.SQLite;Sqlitehelper的封装[6]。5系统实现5.1系统数据库连接实现在管理软件设计编写时,主要采用三层架构模式设计,在程序运行过程中对数据库信息要进行多次的连接,如果对数据库的链接都用C#.NET程序来完成,这样会变得很繁杂,很麻烦,降低程序的执行速度以及效率,代码有很大的部分都是这样的,所以,要使数据库连接变的简化,在设计时可以使用SQLiteHelper.cs这个重要的库类,把运行中用到的相应数据库操作都封装在其中,在执行过程它中调用即可[6]。5.2登录模块设计图(1)设计思路图如下:管理者输入登录名和相应密码,通过管理者的账号去数据库查询对比数据,把数据库中的密码取出来和用户输入的密码进行比较,如果一致则登录成功,否则就会提示密码错误,进不去系统。图5-1构建思路图(2)登录界面展示:图5-2登录主界面图5.3系统主窗体界面实现主界面展示:主界面包括六大功能,顾客开单、增加消费、顾客结账、会员管理、房间设置、商品管理,大厅和餐台、餐桌等状态信息。图5-3系统主界面图5.4系统主界面介绍主界面可以清楚的显示所有餐桌的状态,是否已开单,绿色表示没有开单,红色的代表已经开单,通过红色或者绿色总的数量,也可以清楚的反应出生意的好坏,告诉接下来要来客人有没有空闲的房间或者餐桌。红色的餐桌表示有顾客正在进行就餐消费,点击红色的餐桌还可以清楚的看到顾客的消费信息所点的商品,已及消费时间,还有消费金额,还可以添加一些备注。左边还包含整个餐厅的实时状态信息,包括最低消费、进店时间、消费金额、餐桌的总张数、还有预定数、上座率,这些实时信息方便餐饮管理者进行统一的管理。图5-4餐饮系统主界面图5.5会员管理模块界面会员管理模块有增加信息、修改信息、删除信息、会员充值以及查找会员等功能,还包含一些顾客的个人资料等基本信息,还有会员等级、折扣、积分等优惠条件。图5-5会员管理界面5.6商品管理模块界面图商品管理模块包括增加、修改、删除货物及类别功能,还包括商品的编号、价格,以及当前的库存剩余量等,还支持拼音检索和项目类别过滤,可以方便餐饮工作者进行管理。图5-6商品管理图5.7房间管理模块界面房间设置模块包括添加房间、修改房间、删除房间等功能,还可以对屋内的餐桌进行同样的操作,还包含房间的消费级别和餐桌的状态的基本信息等。图5-7房间管理模块界面5.8顾客开单模块界面顾客开单模块点击相应的餐桌进行开单,会有不同的提示。提示餐饮工作者可不可以进行相应操作。图5-8顾客开单界面图5.9增加消费模块界面增加消费界面可以对每个已开单的房间进行操作,可以通过搜索对现在商品进行添加,双击商品就可以直接添加,十分方便,还可以进行人性化的退菜服务。图5-9增加消费界面图5.10顾客结账模块界面图宾客结账模块界面,显示顾客消费物品的信息,并计算出总的消费金额,也可以直接通过会员名进行结账,非常方便快捷。图5-10顾客结账图6总结由于个人学习程度还不是很深,对C#的掌握水平还是有限,所以,该系统仅仅简单包括了一些最基础的功能,远不能够满足餐饮服务实际需求的各种方面。该客户端还可以进行很大的拓展,在以后的学习旅程中,我会一如既往的研究C#语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年《动物防疫法》知识竞赛试题库及答案(完整版)
- 路由路径合作协议
- 2026年度节能知识竞赛试题及答案
- 慢病防控:心理行为干预在慢病管理中的整合
- 延迟配送赔偿协议
- 大气污染治理工作总结(2篇)
- 柜机安装保险协议
- 慢病防控视角下的社区健康环境营造策略
- 配送路线规划执行合同
- 慢病防控中的健康权平等实现伦理与法律政策
- 高等混凝土结构第一、二章
- 中图版地理七年级上册知识总结
- 大连理工大学固态相变各章节考点及知识点总节
- 肿瘤科专业组药物临床试验管理制度及操作规程GCP
- 统编版四年级下册语文第二单元表格式教案
- 测量系统线性分析数据表
- 上海农贸场病媒生物防制工作标准
- 第三单元课外古诗词诵读《太常引·建康中秋夜为吕叔潜赋》课件
- YY 0334-2002硅橡胶外科植入物通用要求
- GB/T 5836.1-1992建筑排水用硬聚氯乙烯管材
- 论文写作讲座课件
评论
0/150
提交评论