餐饮管理系统的研究.doc

上传人:文****钱 文档编号:42708 上传时间:2018-05-09 格式:DOC 页数:33 大小:1.06MB
下载 相关 举报
餐饮管理系统的研究.doc_第1页
第1页 / 共33页
餐饮管理系统的研究.doc_第2页
第2页 / 共33页
餐饮管理系统的研究.doc_第3页
第3页 / 共33页
餐饮管理系统的研究.doc_第4页
第4页 / 共33页
餐饮管理系统的研究.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、本科生毕业设计(论文)餐饮管理系统的研究所在学院数学与信息技术学院专业计算机科学与技术姓名学号1010520024指导教师完成日期2014年5月2日目录1概述311开发背景312开发环境简介32系统分析421需求分析422系统的开发目标43系统设计分析531系统的功能结构图532系统的业务流程图533数据库的设计64功能模块的设计与实现1241登录模块的设计1242主窗体模块的设计1443开台模块的设计1844点菜模块的设计1945结账模块的设计235系统运行测试2651测试方法2652测试过程2653开发中的难点及解决办法266结论28致谢29参考文献301摘要随着国情的发展,餐饮业在人们日

2、常生活中的地位也越发增高,传统的手工作业记账方式已经不能满足快速发展的现代餐饮行业。在中型及以上规模的餐厅里,若从开启桌台一直到埋单结算都使用人工记录的方式来完成,非常浪费资源,使效率低下,并且记录也容易出现较多的错误,更有可能出现因保管不善而造成遗失或因年代久远而字迹模糊没有保存价值等无法避免的原因。然而,在科学技术发达的当今时代,我们可以用计算机软件技术来设计一个餐饮管理系统,以解决上述问题。本系统应用了MICROSOFTSQLSERVER2000为后台数据库,以VISUALC2010为开发工具,实现了由点餐开始的一系列面向顾客的服务,和面向餐厅的后台管理类服务。本系统摒弃了传统手工记账的

3、不足,利用计算机软件技术来达到餐饮管理的最高效,让计算易出错、易丢失等原因不再出现。真正达到了节能、高效。关键字餐饮管理系统;SQLSERVER;VISUALSTUDIO;2ABSTRACTWITHTHEDEVELOPMENTOFTHENATIONALCONDITIONSANDTHEIMPROVEMENTOFPEOPLESCONSUMPTIONSLEVELS,THESTATUSOFTHERESTAURANTINDUSTRYINPEOPLESDAILYLIVESAREINCREASINGLYHIGHANDTHETRADITIONALWAYOFMANUALLABORCANNOLONGERMEETI

4、NTHEMEDIUMANDLARGESCALERESTAURANT,ITSINEFFICIENTTOWORKBYHUMANRECOURSEFROMFOUNDINGTOTHECHECKOUTPROCESSANDITEASILYLEADTOMUCHMISTAKESSUCHASLOSSOFRECORDANDVALUEBECAUSEOFTHEAGEANDSOONTHATCANTBEAVOIDEDBUTONCEYOUDESIGNACATERINGMANAGEMENTSYSTEMBYCOMPUTERINTHISHIGHTECHNICALWORLD,INSTEADOFTHETRADITIONALMANUAL

5、RECORD,THOSEWOULDBEALLWORKEDOUTTHESYSTEMUSESTHESQLSERVERANDTHEVISUALSTUDIO,TOACHIEVEASERIESOFFRONTDESKOPERATIONSTOGUESTS,ANDBACKSERVICESTHISSYSTEMDROPSTHESHORTCOMINGOFTHETRADITIONALWAYANDMAKEITTHEMOSTEFFICIENTBYCOMPUTERSOFTWARETECHNICKEYWORDSCATERINGMANAGEMENTSYSTEMSQLSERVERVISUALSTUDIO31概述11开发背景随着我

6、国经济的快速发展,人们的生活水平不断的提高,餐饮所在人们日常生活中的地位也越发提高。而在当今这个生活质量大幅度提高的时代,我们对于饮食的要求已经不仅仅是解决温饱,更多的是需要多样化的菜式、更吸引人的美味来满足人们的味蕾。中国是举世闻名的美食大国,有五千年的饮食文化,中国料理在世界上享有盛誉。许多外国人偶然吃过中餐便无法自拔。世界在进步、经济在进步、美食当然也在进步。而与此同时,不仅仅是内容上需要改革,形式上也同样需要改进。开发一个餐饮管理系统软件来代替旧时代的传统手工作业方式显得尤为重要。它需要包括登陆、开台、点菜、查询、加菜、结账以及权限管理等多种功能,一改以往的毫无结构、存在漏洞的手工管理

7、方式。此系统运用C语言进行开发,并且有良好的后台数据库的支持。现今,餐饮业拥有巨大的市场,但就像“一个硬币有两面”,餐饮行业在面对极大机遇的同时,也面临着极大挑战。导致它动荡不安的原因主要有几点1人工结算出错率较高,缺少标准的科学管理体系;2缺乏先进的信息记录工具,缺乏应变能力,还有相当一部分小饭店还用纯手工方式;3人才专业度不高,多没有经过专业餐饮管理的培训。12开发环境简介(1)MICROSOFTVISUALSTUDIO2010VISUALSTUDIO是微软公司支持WINDOWS7应用程序开发的开发环境,支持多种数据库,例如IBMDB2、SQLSERVER等。(2)MICROSOFTSQL

8、SERVER2000MICROSOFTSQLSERVER是由美国微软公司所推出的关系数据库解决方案,数据库的内置语言原本是采用美国标准局(ANSI)和国际标准组织(ISO)所定义的SQL语言,但是微软公司对它进行了部分扩充而成为作业用SQL(TRANSACTSQL)。SQLSERVER2000数据库引擎提供完整的XML支持。(3)C语言C与C、C类似,是集各种语言优点于一身的一种计算机语言。42系统分析21需求分析本系统由开台、点餐、结算及系统设置等几大模块组成,操作规范简便。并且本系统设置了不同身份登录持有不同的权限,使得经理、前台服务员、管理人员都能够充分利用其所在职位的所有职能,利用该系

9、统进行对本店餐饮完善的管理。22系统的开发目标充分考虑到使用者(服务员、经理)的需求,我将一切从用户的角度出发,建立一个人性化、实用性强的系统。将理论与实际相结合,从最初的设计规划到最终的开发使用,一切为使用者考虑。此系统有以下功能1利用计算器功能自动计算消费金额及找零;2利用汉字图形界面,使得操作简便直观,查询一目了然;3将管理数字化,随时掌握数据一切变化,并且易查询;4减少人工管理无法避免的错误、易保存;5增加安全性,增强灵活性;6尽可能减少劳动者劳动力,提高效率;7使企业档次提高,增强企业竞争力。53系统设计分析31系统的功能结构图系统功能结构如图1所示图31餐饮管理系统功能结构图32系

10、统的业务流程图它为我们展示的是一个完整的业务流程,我们可以通过它直观的感受到该系统大体上是如何处理事务的。它是一个整体的框架结构,一般不涉及具体数据及算法。根据登录身份的不同,其拥有的权限也有所限制。除此之外,系统还包括必要的辅助工具计算器、日历等。如图32。餐饮管理系统基础信息辅助工具系统维护系统设置帮助退出桌台信息职员信息日历计算器记事本权限管理系统备份系统恢复口令设置锁定系统帮助退出系统6前台使用人员键入正确用户名密码登录该软件后,对于桌台的情况一目了然,管理人员使用起来也非常方便,系统可以满足各种需要的功能而没有冗余,使用户操作起来得心应手,十分方便。33数据库的设计331概念模型设计

11、该系统采用SQLSEVER作为后台数据库存储数据,因为它能足够存储大量的必要的信息。系统维护基础信息系统设置辅助工具退出帮助系统主窗体是否管理员系统登录是否登录否是是否图32餐饮管理系统的业务流程图7商品信息系统编号类别编号代号名称价格图33商品信息ER图商品类别信息商品类别编号商品类别名称图34商品类别信息ER图顾客消费信息消费桌台名称备注信息消费商品数量开单人消费时间系统编号商品代号商品名称商品价格图35顾客消费信息ER图8用户信息表登录账号系统编号账号权限登录密码图36用户信息ER图桌台信息桌台包间费顾客人数开单人开台时间顾客名称桌台其他信息桌台备注桌台类型系统编号桌台名称桌台简称桌台位

12、置桌台状态图37桌台信息ER图9职员信息职员电话职员年龄职员性别系统编号职员姓名身份证号码职员编号图38职员信息ER图10332逻辑结构设计12341156124功能模块的设计与实现41登录模块的设计登录模块的作用是阻挡非法人员进入系统。运行该模块之后,要想进入系统,需键入正确的用户名、密码,点击“登录”,如图41所示。该模块具体执行的过程如下1单击“登录”按钮后,第一步判断用户名和密码是否为空。若为空,弹出提示框“用户输入用户名(密码)”;若不为空,系统对已输入的数据是否正确进行判断。具体实现代码如下。PRIVATEVOIDBTNSUBMIT_CLICKOBJECTSENDER,EVENTA

13、RGSEIFTXTNAMETEXT“MESSAGEBOXSHOW“请输入用户名“,“警告“,MESSAGEBOXBUTTONSOK,MESSAGEBOXICONWARNINGELSEIFTXTPWDTEXT“MESSAGEBOXSHOW“请输入密码“,“警告“,MESSAGEBOXBUTTONSOK,MESSAGEBOXICONWARNINGELSESQLCONNECTIONCONNBASECLASSDBCONNCYCONCONNOPENSQLCOMMANDCMDNEWSQLCOMMAND“SELECTCOUNTFROMTB_USERWHEREUSERNAME“TXTNAMETEXT“ANDU

14、SERPWD“TXTPWDTEXT“,CONN13INTICONVERTTOINT32CMDEXECUTESCALARIFI0CMDNEWSQLCOMMAND“SELECTFROMTB_USERWHEREUSERNAME“TXTNAMETEXT“,CONNSQLDATAREADERSDRCMDEXECUTEREADERSDRREADSTRINGUSERPOWERSDR“POWER“TOSTRINGTRIMCONNCLOSEFRMMAINMAINNEWFRMMAINMAINPOWERUSERPOWERMAINNAMESTXTNAMETEXTMAINTIMESDATETIMENOWTOSHORTD

15、ATESTRINGMAINSHOWTHISHIDEELSEMESSAGEBOXSHOW“用户名或密码错误“2当键入用户名和密码后,登录有两种方式按“登录”按钮和按ENTER键。实现代码PRIVATEVOIDTXTPWD_KEYPRESSOBJECTSENDER,KEYPRESSEVENTARGSEIFEKEYCHAR13BTNSUBMIT_CLICKSENDER,E3单击“取消”键,退出系统,实现代码PRIVATEVOIDBTNCONCEL_CLICKOBJECTSENDER,EVENTARGSEIFMESSAGEBOXSHOW“确定退出系统吗”,“提示”,MESSAGEBOXBUTTONSO

16、KCANCEL,MESSAGEBOXICONASTERISKDIALOGRESULTOKAPPLICATIONEXIT1442主窗体模块的设计程序的主窗体模块是用户登录餐饮管理系统后首先映入眼帘的,也是系统主要的操作界面,所以很重要。该系统模块的主要形式可以分为三部菜单栏基础信息、辅助工具等功能表;主界面桌台情况,可以看到现在餐厅各个桌台的用餐状态;状态栏已登录用户的用户名和权限、登录时间。运行结果如图42所示。1登录系统后,不同身份登录将拥有不同的权限,具体代码如下PRIVATEVOIDFRMMAIN_LOADOBJECTSENDER,EVENTARGSESWITCHPOWERCASE“0“

17、TOOLSTRIPSTATUSLABEL13TEXT“超级管理员”;BREAKCASE“1“TOOLSTRIPSTATUSLABEL13TEXT“经理”;BREAKCASE“2“TOOLSTRIPSTATUSLABEL13TEXT“一般用户”;BREAKTOOLSTRIPSTATUSLABEL10TEXTNAMESTOOLSTRIPSTATUSLABEL16TEXTTIMESIFPOWER“2“15系统维护TOOLSTRIPMENUITEMENABLEDFALSE基础信息TOOLSTRIPMENUITEMENABLEDFALSEIFPOWER“1“系统维护TOOLSTRIPMENUITEMEN

18、ABLEDFALSE2选择主窗体菜单栏中的“基础信息”中的“桌台信息”命令,打开所有桌台信息的窗体。具体实现如下PRIVATEVOID桌台信息TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMDESKDESKNEWFRMDESKDESKSHOWDIALOG3选择主窗体菜单栏中的“基础信息”中的“职员信息”命令,打开所有职员信息的窗体。具体实现如下PRIVATEVOID职员信息TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMUSERUSERSNEWFRMUSERUSERSSHOWDIALOG4选

19、择主窗体菜单栏中的“系统维护”中的“权限管理”命令,打开管理用户权限的窗体。具体实现如下PRIVATEVOID权限管理TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMQXGLQXNEWFRMQXGLQXSHOWDIALOG5选择主窗体菜单栏中的“系统维护”中的“系统备份”命令,打开备份系统数据库的窗体。具体实现如下PRIVATEVOID系统备份TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMBFBFNEWFRMBF16BFSHOWDIALOG6选择主窗体菜单栏中的“系统维护”中的“系统恢复”

20、命令,打开恢复系统数据库的窗体。具体实现如下PRIVATEVOID系统恢复TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMHFHFNEWFRMHFHFSHOWDIALOG7选择主窗体菜单栏中的“系统设置”中的“口令设置”命令,打开修改用户密码的窗体。具体实现如下PRIVATEVOID口令设置TOOLSTRIPMENUITEM1_CLICKOBJECTSENDER,EVENTARGSEFRMPWDPWDNEWFRMPWDPWDNAMESNAMESPWDSHOWDIALOG8当用户右击某个桌台时,该桌台当前的状态不同,弹出的右键菜单便不同。具体实

21、现如下PRIVATEVOIDLVDESK_CLICKOBJECTSENDER,EVENTARGSESTRINGNAMESLVDESKSELECTEDITEMS0SUBITEMS0TEXTSQLCONNECTIONCONNBASECLASSDBCONNCYCONCONNOPENSQLCOMMANDCMDNEWSQLCOMMAND“SELECTFROMTB_ROOMWHEREROOMNAME“NAMES“,CONNSQLDATAREADERSDRCMDEXECUTEREADERSDRREADSTRINGZTSDR“ROOMZT“TOSTRINGTRIMSDRCLOSEIFZT“使用“THISCON

22、TEXTMENUSTRIP1ITEMS0ENABLEDFALSETHISCONTEXTMENUSTRIP1ITEMS1ENABLEDTRUETHISCONTEXTMENUSTRIP1ITEMS3ENABLEDTRUETHISCONTEXTMENUSTRIP1ITEMS5ENABLEDTRUETHISCONTEXTMENUSTRIP1ITEMS6ENABLEDTRUE17IFZT“待用“THISCONTEXTMENUSTRIP1ITEMS0ENABLEDTRUETHISCONTEXTMENUSTRIP1ITEMS1ENABLEDFALSETHISCONTEXTMENUSTRIP1ITEMS3EN

23、ABLEDFALSETHISCONTEXTMENUSTRIP1ITEMS5ENABLEDFALSETHISCONTEXTMENUSTRIP1ITEMS6ENABLEDFALSECONNCLOSE9当用户在某个未使用的桌台上单击鼠标右键,在弹出的菜单中选择“开台”命令,就可以打开开台单窗体。具体实现如下PRIVATEVOID开台TOOLSTRIPMENUITEM_CLICKOBJECTSENDER,EVENTARGSEIFLVDESKSELECTEDITEMSCOUNT0STRINGNAMESLVDESKSELECTEDITEMS0SUBITEMS0TEXTFRMOPENOPENROOMNEWF

24、RMOPENOPENROOMNAMENAMESOPENROOMSHOWDIALOGELSEMESSAGEBOXSHOW“请选择桌台“10当用户右击某个正在使用的桌台时,在弹出的菜单中选择“点/加菜”命令,就可以打开“点/加菜”的窗体。具体实现如下PRIVATEVOID点菜TOOLSTRIPMENUITEM_CLICKOBJECTSENDER,EVENTARGSEIFLVDESKSELECTEDITEMSCOUNT0STRINGNAMESLVDESKSELECTEDITEMS0SUBITEMS0TEXTFRMDCDCNEWFRMDCDCRNAMENAMESDCSHOWDIALOGELSEMESS

25、AGEBOXSHOW“请选择桌台“1843开台模块的设计开台模块应包含桌台编号、开台日期、顾客名称、用餐人数以及开台服务员的名称和必要的备注。有了这几点便可使前台人员做好账单的记录工作,便于结账,更是便于日后账单的管理与统计。并且开台单的窗体用于对指定桌台的开台,应该让前台人员直观的看到该桌台的分布状况,如图43。开台单模块代码如下1当窗体加载时,可以将数据库中所有的桌台信息和职员信息检索出来。具体实现如下PRIVATEVOIDFRMOPEN_LOADOBJECTSENDER,EVENTARGSECONNBASECLASSDBCONNCYCONCONNOPENSQLCOMMANDCMDNEWS

26、QLCOMMAND“SELECTFROMTB_ROOM“,CONNSQLDATAREADERSDRCMDEXECUTEREADERWHILESDRREADCBNUMITEMSADDSDR“ROOMNAME“TOSTRINGTRIMCBNUMSELECTEDITEMNAMETRIMSDRCLOSECMDNEWSQLCOMMAND“SELECTFROMTB_WAITER“,CONNSDRCMDEXECUTEREADERWHILESDRREADCBWAITERITEMSADDSDR“WAITERNAME“TOSTRINGTRIMCBWAITERSELECTEDINDEX0SDRCLOSE192在“用

27、餐人数”文本框中输入数据,但此数据必须大于0。具体实现如下PRIVATEVOIDTXTNUM_KEYPRESSOBJECTSENDER,KEYPRESSEVENTARGSEIFEKEYCHAR8EHANDLEDTRUE3当数据输入结束之后,单击“保存”按钮,即此桌台进行开台操作成功。具体实现如下PRIVATEVOIDBTNSAVE_CLICKOBJECTSENDER,EVENTARGSEIFTXTNUMTEXT“|CONVERTTOINT32TXTNUMTEXT0MESSAGEBOXSHOW“请输入用餐人数“ELSESTRINGROOMNAMECBNUMSELECTEDITEMTOSTRING

28、SQLCOMMANDCMD1NEWSQLCOMMAND“UPDATETB_ROOMSETGUESTNAME“TXTNAMETEXT“,ZHANGDANDATE“DATETIMEPICKER1VALUETOSTRING“,NUM“CONVERTTOINT32TXTNUMTEXT“,WAITERNAME“CBWAITERSELECTEDITEMTOSTRING“,ROOMZT使用WHEREROOMNAME“NAME“,CONNCMD1EXECUTENONQUERYTHISCLOSEPRIVATEVOIDBTNEXIT_CLICKOBJECTSENDER,EVENTARGSETHISCLOSE44点

29、菜模块的设计开启点菜模块后,在左侧的菜单双击菜名,在服务员栏中选择当时点餐的服务员,如果需要的话进行备注。待服务员为顾客点完餐后直接点击“保存”,如图44所示。20该模块实现代码如下1当单击点菜按钮,点菜窗体加载时,显示出在数据库中检索的所有菜名,以供用户选择。实现代码如下PRIVATEVOIDFRMDC_LOADOBJECTSENDER,EVENTARGSETHISTEXTRNAME“点/加菜“TREENODENEWNODE1TVFOODNODESADD“锅底“TREENODENEWNODE2TVFOODNODESADD“配菜“TREENODENEWNODE3TVFOODNODESADD“烟

30、酒“TREENODENEWNODE4TVFOODNODESADD“主食“SQLCONNECTIONCONNBASECLASSDBCONNCYCONCONNOPENSQLCOMMANDCMDNEWSQLCOMMAND“SELECTFROMTB_FOODWHEREFOODTY1“,CONNSQLDATAREADERSDRCMDEXECUTEREADERWHILESDRREADNEWNODE1NODESADDSDR3TOSTRINGTRIMSDRCLOSECMDNEWSQLCOMMAND“SELECTFROMTB_FOODWHEREFOODTY2“,CONNSDRCMDEXECUTEREADERWH

31、ILESDRREADNEWNODE2NODESADDSDR3TOSTRINGTRIMSDRCLOSE图12顾客点菜21CMDNEWSQLCOMMAND“SELECTFROMTB_FOODWHEREFOODTY3“,CONNSDRCMDEXECUTEREADERWHILESDRREADNEWNODE3NODESADDSDR3TOSTRINGTRIMSDRCLOSECMDNEWSQLCOMMAND“SELECTFROMTB_FOODWHEREFOODTY4“,CONNSDRCMDEXECUTEREADERWHILESDRREADNEWNODE4NODESADDSDR3TOSTRINGTRIMSDR

32、CLOSECMDNEWSQLCOMMAND“SELECTFROMTB_WAITER“,CONNSDRCMDEXECUTEREADERWHILESDRREADCBWAITERITEMSADDSDR“WAITERNAME“TOSTRINGTRIMCBWAITERSELECTEDINDEX0SDRCLOSECMDNEWSQLCOMMAND“SELECTROOMZTFROMTB_ROOMWHEREROOMNAME“RNAME“,CONNSTRINGZTCONVERTTOSTRINGCMDEXECUTESCALARIFZTTRIM“待用“GROUPBOX1ENABLEDFALSEGROUPBOX2ENA

33、BLEDFALSEGROUPBOX3ENABLEDFALSEGROUPBOX4ENABLEDFALSECONNCLOSEGETDATATVFOODEXPANDALL2要求消费商品数量的文本框中填的必须是数字,在该文本框中的KEYPRESS事件中设计代码以控制数据类型。实现代码如下PRIVATEVOIDTXTPNUM_KEYPRESSOBJECTSENDER,KEYPRESSEVENTARGSE22IFEKEYCHAR8EHANDLEDTRUE3当点完菜后,单击“保存”,具体实现如下PRIVATEVOIDBTNSAVE_CLICKOBJECTSENDER,EVENTARGSEIFTXTNAMET

34、EXT“|TXTNUMTEXT“|TXTPRICETEXT“MESSAGEBOXSHOW“请将选择菜系“RETURNELSEIFTXTPNUMTEXT“MESSAGEBOXSHOW“数量不能为空“RETURNELSEIFCONVERTTOINT32TXTPNUMTEXT0MESSAGEBOXSHOW“请输入消费数量“RETURNELSESQLCONNECTIONCONNBASECLASSDBCONNCYCONCONNOPENSQLCOMMANDCMDNEWSQLCOMMAND“INSERTINTOTB_GUESTFOODFOODNUM,FOODNAME,FOODSUM,FOODALLPRICE

35、,WAITERNAME,BEIZHU,ZHUOTAI,DATATIMEVALUES“TXTNUMTEXTTRIM“,“TXTNAMETEXTTRIM“,“TXTPNUMTEXTTRIM“,“CONVERTTODECIMALTXTALLPRICETEXTTRIM“,“CBWAITERSELECTEDITEMTOSTRING“,“TXTBZTEXTTRIM“,“RNAME“,“DATETIMENOWTOSTRING“,CONNCMDEXECUTENONQUERYCONNCLOSEGETDATA2345结账模块的设计结账模块用来在顾客用餐完毕之后计算消费金额,并打95折。该模块的设计思路是查询数据库

36、来检索当时添加到数据库中的数据,在结账时得出消费支出总额,如图45所示该模块实现的代码1当前进行结账的桌台号显示在窗体的最上端,“点菜”环节中输入进数据库的消费项目将会自动搜索出来,并在DATAGRIDVIEW控件上得到显示,最终将得到的结果乘以95(新店打95折),实现代码如下。PRIVATEVOIDFRMJZ_LOADOBJECTSENDER,EVENTARGSETHISTEXTRNAME“结账“GROUPBOX1TEXT“当前桌台“RNAMESQLCONNECTIONCONNBASECLASSDBCONNCYCONSQLDATAADAPTERSDANEWSQLDATAADAPTER“SE

37、LECTFOODNAME,FOODSUM,FOODALLPRICE,WAITERNAME,BEIZHU,ZHUOTAI,DATATIMEFROMTB_GUESTFOODWHEREZHUOTAI“RNAME“ORDERBYIDDESC“,CONNDATASETDSNEWDATASETSDAFILLDSDGVRECORDDATASOURCEDSTABLES0CONNOPENSQLCOMMANDCMDNEWSQLCOMMAND“SELECTSUMFOODALLPRICEFROMTB_GUESTFOODWHEREZHUOTAI“RNAME“,CONNPRICECONVERTTOSTRINGCMDEXE

38、CUTESCALARIFPRICE“24LBLPRICETEXT“0“BTNJZENABLEDFALSEELSECMDNEWSQLCOMMAND“SELECTROOMBJFFROMTB_ROOMWHEREROOMNAME“RNAME“,CONNBJFCMDEXECUTESCALARTOSTRINGIFBJF“0“BTNJZENABLEDTRUELBLPRICETEXTPRICE“95“BJF“CONVERTTODECIMALCONVERTTODOUBLEPRICECONVERTTODOUBLE095TOSTRING“C“ELSEBTNJZENABLEDTRUELBLPRICETEXTPRICE

39、“95“BJF“CONVERTTODECIMALCONVERTTODOUBLEPRICECONVERTTODOUBLE095CONVERTTODECIMALBJFTOSTRING“C“CONNCLOSE2在支付金额一栏中的KEYPRESS控件里编写代码,来控制正确数据信息的输入,实现代码如下。PRIVATEVOIDTXTMONEY_KEYPRESSOBJECTSENDER,KEYPRESSEVENTARGSEIFEKEYCHAR8EHANDLEDTRUE3当在“收银”文本框中输入顾客一共付的总金额后,系统将自动得出找零,实现代码如下。PRIVATEVOIDTXTMONEY_TEXTCHANGE

40、DOBJECTSENDER,EVENTARGSEIFPRICE“25LBL0TEXT“0“ELSEIFTXTMONEYTEXT“TXTMONEYTEXT“0“LBL0TEXT“0“ELSELBL0TEXTCONVERTTODECIMALCONVERTTODOUBLETXTMONEYTEXTTRIMCONVERTTODOUBLEPRICECONVERTTODOUBLE095CONVERTTODOUBLEBJFTOSTRING“C“265系统运行测试51测试方法黑盒测试。52测试过程1测试用例登录模块是系统安全的第一道防线,它担任着保护系统最重要的作用。现做如下测试键入错误用户名(密码),测试是否

41、仍然能够进入系统,如图51显示。2测试数据1输入相关信息对一些数据进行增添、改正等操作,看是否能实现其基本功能,以测试系统的正确性。2查询相关信息对查询功能进行检测,查询已输入的信息,和初始输入的信息是否相同。3删除相关信息对已删除的信息进行查询,验证信息是否被正确删除,用以检测系统中对删除的定义是否正确。53开发中的难点及解决办法难点在系统的实际运用中,若遇到突发状况导致系统非正常关闭,恢复正常后,怎样让已开台的桌台继续保持开台状态,并且消费信息保持不变。例如若有一天,正在使用此餐饮管理系统的饭店突然遭遇停电,电脑突然断电。当来电之后,重启电脑,怎么能使正在享用美食的顾客的桌台仍显示为开台,

42、并且已点菜单信息保持不变,等待消费完毕之后仍可以正确结账。解决方法经向老师同学求助以及自己深思熟虑,我最终决定为每个桌台创建一个字段,用来标识该台的当前状态。使在意外状况的发生下导致系统非正常关闭,重新进入系统,每个桌台原本的状态都能正确的显示出来且图标正确,代码如下。PRIVATEVOIDADDITEMSSTRINGROOMZTIFROOMZT“使用“LVDESKITEMSADDSDR“ROOMNAME“TOSTRING,127ELSELVDESKITEMSADDSDR“ROOMNAME“TOSTRING,0286结论本系统开发了一个月,涵盖了主要的餐饮管理模块,并且没有冗余,使用户操作起来

43、简便快捷。由此可见,这是一个非常成功的设计,是一个可以真正应用到实际生活中的餐饮管理系统。这次系统的开发是一个对大学学到知识的一次良好复习总结的过程,它真正让我从理论走向实际,把书本上的知识良好的运用到生活中去。它是一次体验过程,它使我获得了一次开发系统的经验。在开发系统的过程中,我明白了光掌握书本知识是远不能满足实际软件开发的,软件开发更重要的是实际操作过程,是把脑海中的想法利用代码展现出来。这次餐饮管理系统的设计让我明白了如何去做一个系统,以及什么叫做真正意义上的编程。我所做的系统并不完美,它还有许多地方需要改进。这次系统开发让我看到自己在专业上的不足之处,让我看到我的知识掌握地并不牢固,

44、要想把系统做的更加完善,必须加大力度去学习更多的知识,不仅要在课堂上跟老师学习,还要在课后利用自己的课余时间,多看课外书,多发现不懂得地方,多向老师请教、和同学探讨。为做一个更好、更全面的系统而努力。29致谢在这次系统开发的过程中,我最要感谢的是我的指导老师赵洁老师。她就像一盏明灯,当我在黑暗的道路中瞎摸索时为我照亮了方向,让我看清前方的路,没有她就没有这个系统的诞生。她是为我传道授业解惑的好老师。若是光凭我一人的努力,就算能够完成这个系统的开发,也要花费比现在多几倍的时间和精力。所以我特别感谢她,让我少走了不少弯路,让我获得了一次收获颇丰的系统开发体验。另外,我还要特别感谢我的同学们,感谢她

45、们在我遇到困难一筹莫展的时候为我排忧解难。他们是我情感里的知己,是我在学场上的战友,更是生活中的好伙伴。感谢她们的陪伴,让我能在遇到难点不知所措又心烦意乱的时候安慰我并且和我并肩作战。真的很庆幸可以遇到她们,没有她们,也没有这个系统的诞生。30参考文献1张正礼C40程序设计与项目实战M北京清华大学出版社20122王小科C项目开发案例全程实录(第二版)M北京清华大学出版社20113张跃廷ASPNET数据库系统开发案例精选M北京人民邮电出版社20074周峰SQLSERVER中文版关系数据库基础与实践教程M北京电子工业出版社20065李兰友VISUALCNET程序设计M北京清华大学北方交通大学出版社20056闪四清SQLSERVER实用简明教程(第三版)M北京清华大学出版社20087孙涌软件工程教程北京机械工业出版社2010

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。