欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    餐馆点菜管理系统.doc

    • 资源ID:37586714       资源大小:153.50KB        全文页数:17页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    餐馆点菜管理系统.doc

    湖北民族学院信息工程学院软件编程实训设计报告书题目: 餐馆点菜系统的开发 专 业: 电气工程 班 级: 0312422 学 号: 031240717 学生姓名: 陈昊 指导教师: 钟 建 伟 2013年 9 月 18 日湖北民族学院信息工程学院软件编程实训任务书学生姓名陈昊学 号031240717成 绩设计题目餐馆点菜系统的开发设计内 容 开发餐馆点菜系统。系统具有点菜、结账、查询、统计、设置功能。设计要求开发餐馆点菜系统。系统具有点菜、结账、查询、统计、设置功能。点菜时可用菜名的拼音简码搜索菜。查询功能包括查询菜和点菜单。统计可统计一天的营业额。设置功能包括查询操作员和菜。系统采用B/S结构,用ASP开发,后台数据库采用SQL Server 2005.时间安排 系统分析与设计阶段(2天) 程序编制与调试阶段(5天) 总结报告和书写说明书阶段(2天) 答辩与考核阶段(1天) 参考资料1 赵慧勤网络数据库应用技术北京:机械工业出版社,2004 2 柳青,刘渝妍,何文华Visual Basic程序设计教程M北京:高等教育出版社,2000 3 王春才,高春艳,李俊民 Visual Basic数据库系统开发完全手册M 北京:人民邮电出版社,2004 4 杨富国,王健,王倩 Visual Basic程序开发案例解析M北京: 清华大学出版社,2005 5 齐治昌,谭庆平,宁洪.软件工程M.北京:高等教育出版社,2004目录1 任务的提出与方案论证41.1 研究背景及意义41.2国内外研究现状41.3本文研究内容42 设计思路52.1 需求分析52.2 软件体系结构设计52.3 数据库设计52.3.1 逻辑结构设计52.3.2 物理结构设计63 详细设计73.1 数据库连接文件73.2 客户端首页73.3 酒店餐饮点餐73.4 主要代码83.5 酒店餐饮结账104 总结11参考文献12附录13菜单主要代码:13实现搜索的主要代码:15点菜后台处理代码:16结账代码:16酒店管理代码:171 任务的提出与方案论证1.1 研究背景及意义 目前,我国酒店餐饮业在日常点菜管理中仍普遍采用手工操作方式,整体科技含量低,随着酒店餐饮业高速发展和餐饮店规模的不断扩大,许多酒店餐饮企业采用连锁经营和集团化运营,手工操作无论是在工作效率、人力成本和决策信息等方面都已经难以适应企业发展的要求,制约了整个酒店餐饮业的规模化发展和整体服务水平的提升。据预测,未来3至5年内,信息数字技术产品在中国饭店与餐饮业的应用将达到一个高峰,市场最大容量可达2300亿元人民币。就点菜系统而言,最普遍的是计算机收银台录入菜单设备、POS点菜系统,除了这种点菜系统,其它的计算机信息系统已经从预订、接待、点菜、菜品上传、厨房分单打印、条码划菜、收银、经理查询等方面在大型餐饮企业全方位地整合起来了。1.2国内外研究现状 餐饮业在二十世纪七十年代之前,一直采用传统的手工服务模式。在计算机信息技术发展的二十世纪下半叶,越来越多的企业意识到信息技术发展的重要性。一些食品服务系统和电子信息管理系统的开发出来,而且在一些企业已经开始使用,这也促进了餐饮业的迅速发展和进步。网络技术在八十年代末至九十年代中期发展迅速,人机交互不断发展,出现了液晶屏这个终端前两,在这期间,系统之间通常是以有线的方式进行连接。而入境,网络信息技术发展有了大突破,数据库技术和网络技术在很多方面都得到了多方面的运用和完善。网络技术也拓展了餐饮服务,如今消费者不但可以远程订餐,还可以网上支付,订餐、就餐、结账、足不出户就可完成。1.3本文研究内容 本论文对各大酒店的酒店点菜管理系统的工作需求进行了全面的分析。采用B/S三层软件体系结构,以Windows为操作平台,Java为开发语言,SQLServer2008为数据库,Eclipse为开发工具,使用JDBC连接。 本论文的重点工作包括在系统中实现了按角色的访问控制,对系统数据进行分析、排序。2 设计思路2.1 需求分析 本系统的总目标是为用户提供迅速、高效的服务,减免手工处理的繁琐与误差,及时、准确地反映酒店的工作情况、经营情况,从而提高酒店的服务质量,获得更好的经济效益。其具体目标包括: (1)快速完成顾客的点餐。 (2)准确无误地记录顾客的每笔消费记录。(3)实时、快速、准确地提供最新餐单。 (4)方便查询顾客消费情况。 (5)方便查询酒店的营业额情况。2.2 软件体系结构设计 餐馆点菜系统数据流程图,如图2.1所示。点菜D3顾客点菜信息结账D2菜品信息处理订桌服务员D1桌台使用情况前台顾客获取桌台桌台情况图2.1数据图2.3 数据库设计 2.3.1 逻辑结构设计 辑结构设计的任务就是把概念模型结构转换成某个具体的DBMS所支持的数据模型。设计逻辑结构时,首先是将概念结构转换为一般的关系、网状、层次模型,其次是将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换,最后是对数据模型进行优化。 关系模式如下:菜(菜编号,菜名,类型,价格,状态); 桌台(桌台编号,桌台名称,状态,服务员); 服务员(编号,姓名,性别,年龄,电话); 管理员(编号,名称,密码)。 2.3.2 物理结构设计 据库的物理结构设计是对于给定的逻辑数据模型,选取一个最合适应用环境的物理结构。数据库的物理结构指的是数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统,是在数据库逻辑结构的基础上设计出一组能够满足实际需求的关系、约束、和索引等信息。餐饮点菜系统的数据库表结构如下:(1) 服务员基本信息表,如表2.1所示。表2.1服务员基本信息表属性中文名称属性名类型长度说明服务员号IDInt酒店统一编号,具有唯一性服务员名称Watiername Nvarchar50服务员名称服务员性别SexChar10服务员性别服务员年龄AgeChar10电话TelNvarchar50表2.13 详细设计3.1 数据库连接文件 conn.asp文件负责建立与数据库的连接,并创建了关闭连接的过程。该文件为系统的公共文件,在其他要实现数据操作的文件中会调用此文件,该文件的代码如下: <%  dim conn,connStr  set conn=server.CreateObject("adodb.connection")      connStr="PROVIDER=SQLOLEDB;DATA SOURCE=XDNGS-90EBAEBEESQLEXPRESS;UID=sa;PWD=123;DATABASE=keshe"   conn.open(connStr) %>  3.2 客户端首页客户端首页由多个文件构建而成,其应用界面如图3-1所示图3.1 客户端首页3.3 酒店餐饮点餐顾客通过首页顾客点餐可以进入酒店餐饮点餐界面,该界面列出了当前酒的可用空桌号和酒店的菜谱列表,顾客可以通过自己的喜好进行点餐、加菜或返回首页。在该页上还设置了搜索功能,顾客可以通过拼音简码搜索自己喜欢的菜,界面如图3-2所示。图3.2 菜品信息3.4 主要代码主要代码如下: img src="images/3.jpg"  /> <form id="form1" name="form1" class="form1" method="post" action="showResult.asp" >  <span class="Keywords">搜索菜:</span><input type="text" name="cname" id="cid" value="请输入菜的拼音简码" onfocus="this.value=''"/>  <input name="sousuo" type="submit" value="搜索"  /> </form> <span class="words">以下是现在酒店的空桌和菜谱,我们热忱为您服务:</span> <form name="caipu" method="post" action="diancai.asp"> 桌台号: <%dim rs2,sql2     set rs2=server.CreateObject("adodb.recordset")     sql2="select * from zhuotai  where table空闲'"     rs2.open sql2,conn,1,1     if not rs2.eof then     do while not rs2.eof %> <input type="radio" name="zhuozi" value="<%=rs2("ID")%>" /><%=rs2("ID")%> <%   rs2.movenext   loop  end if %><br/> <table border="0" cellpadding="0" cellspacing="1" width="800" bgcolor="#a8c7ce">  <tr><td  height="20"  bgcolor="#d3eaef" colspan="5">菜品信息列表</td></tr>  <tr>     <th width="20%"><%="选择"%></th>  <th width="20%"><%="编号"%></th>     <th width="20%"><%="菜名"%></th>     <th width="20%"><%="类型"%></th>     <th width="20%"><%="价格/元"%></th>  </tr> <%    dim rs1,sql1     'dim CID    'CID=request.Form("cname")    set rs1=server.CreateObject("adodb.recordset")    'if request.Form("cname")="" then    sql1="select * from caiList"    rs1.open sql1,conn,1,1    if not rs1.eof then     do while not rs1.eof        if rs1("isselected")=1 then        %>             <tr align="center" bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#33CCFF'" onMouseOut="javascript:this.bgColor='#FFFFFF'">               <td><input type="checkbox" checked="checked" name="cai"  value="<%=rs1("ID")%>"/></td>    <td><%=rs1("ID")%></td>             <td><%=rs1("cname")%></td>             <td><%=rs1("ctype")%></td>             <td><%=rs1("cprice")%></td>             </tr> 9              <%   else%>              <tr align="center" bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#33CCFF'" onMouseOut="javascript:this.bgColor='#FFFFFF'">       <td><input type="checkbox" name="cai"  value="<%=rs1("ID")%>"/></td>     <td><%=rs1("ID")%></td>     <td><%=rs1("cname")%></td>     <td><%=rs1("ctype")%></td>     <td><%=rs1("cprice")%></td>              </tr>     <%     end if     rs1.movenext            loop  end if   %>     <tr align="center">  <td><span class="words">点菜完成请提交:</span></td>     <td><input name="tijiao" type="submit" value="提交" /></td>  <td><input name="jiacai" type="button" value="加菜" onclick="window.location='jiacai.asp'" /></td>     </tr>      <tr align="center">  <td colspan="3"><input name="fanhui" type="button" value="返回首页" onclick="window.location='index.asp'" /> </td>  <td colspan="2"><input name="denglu" type="button" value="管理员登录" onclick="window.location='admin.asp'" /> </td>     </tr> </table> </form>    实现搜索处理的主要代码如下: <script type="text/javascript"> function doUp()  var qstr=""  $("inputname='cai'").each(function() if(this.checked) if(qstr!="") qstr=qstr+"&"            3.5 酒店餐饮结账 通过首页顾客结账通道可以进入酒店餐饮结账界面,如图3-3所示4 总结本文描述了酒店餐饮点菜系统的设计与实现,该系统是运用SQL2005数据库系统和ASP开发实现的。在系统设计过程中,对整体进行需求分析、总体设计、详细设计,实现了利用菜名的拼音简码对菜进行搜索的功能;实现了顾客点菜、账单入库、账单查询等功能。系统管理员还具有查看营业额,对菜谱、桌台、服务员进行管理等功能。对于酒店的营业额,可以通过直方图的形式形象的反映本年度各个月的营业情况。但是系统还存在很多不足,在很多细节的实现上还是不够好。比如系统在设计模块中的功能设计得较为单一,在操作过程中没有设置抛出异常,当存在不合法的操作时可能会导致系统出现问题;在查询营业额的时候,只是显示了营业额的总额,没有能够显示出详细的营业情况;还有系统的安全性不好,没有一个完善的安全等级管理机制,在许多页面之前没有判断,没有实现数据库中内容的加密。系统中的这些不足,还需要我在以后的时间里来完善,以使系统功能更加完善。此外,页面布局也不美观,缺少素材对界面的装饰,还有待改进。 在此,衷心的感谢任民宏老师的悉心指导,在任老师的严格要求下,我的课程设计有了较为完善的一面,使我学到了新的知识,在锻炼的过程中能力有了提高。参考文献1 赵慧勤网络数据库应用技术北京:机械工业出版社,2004 2 柳青,刘渝妍,何文华Visual Basic程序设计教程M北京:高等教育出版社,2000 3 王春才,高春艳,李俊民 Visual Basic数据库系统开发完全手册M 北京:人民邮电出版社,2004 4 杨富国,王健,王倩 Visual Basic程序开发案例解析M北京: 清华大学出版社,2005 5 齐治昌,谭庆平,宁洪.软件工程M.北京:高等教育出版社,2004附录菜单主要代码如下: <img src="images/3.jpg"  /> <form id="form1" name="form1" class="form1" method="post" action="showResult.asp" >  <span class="Keywords">搜索菜:</span><input type="text" name="cname" id="cid" value="请输入菜的拼音简码" onfocus="this.value=''"/>  <input name="sousuo" type="submit" value="搜索"  /> </form> <span class="words">以下是现在酒店的空桌和菜谱,我们热忱为您服务:</span> <form name="caipu" method="post" action="diancai.asp"> 桌台号: <%  dim rs2,sql2     set rs2=server.CreateObject("adodb.recordset")     sql2="select * from zhuotai  where tablestatus='空闲'"     rs2.open sql2,conn,1,1     if not rs2.eof then     do while not rs2.eof 8 %> <input type="radio" name="zhuozi" value="<%=rs2("ID")%>" /><%=rs2("ID")%> <%   rs2.movenext   loop  end if %><br/> <table border="0" cellpadding="0" cellspacing="1" width="800" bgcolor="#a8c7ce">  <tr><td  height="20"  bgcolor="#d3eaef" colspan="5">菜品信息列表</td></tr>  <tr>     <th width="20%"><%="选择"%></th>  <th width="20%"><%="编号"%></th>     <th width="20%"><%="菜名"%></th>     <th width="20%"><%="类型"%></th>     <th width="20%"><%="价格/元"%></th>  </tr> <%    dim rs1,sql1     'dim CID    'CID=request.Form("cname")    set rs1=server.CreateObject("adodb.recordset")    'if request.Form("cname")="" then    sql1="select * from caiList"    rs1.open sql1,conn,1,1    if not rs1.eof then     do while not rs1.eof        if rs1("isselected")=1 then        %>             <tr align="center" bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#33CCFF'" onMouseOut="javascript:this.bgColor='#FFFFFF'">               <td><input type="checkbox" checked="checked" name="cai"  value="<%=rs1("ID")%>"/></td>    <td><%=rs1("ID")%></td>             <td><%=rs1("cname")%></td>             <td><%=rs1("ctype")%></td>             <td><%=rs1("cprice")%></td>             </tr>          <%     else%>              <tr align="center" bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#33CCFF'" onMouseOut="javascript:this.bgColor='#FFFFFF'">       <td><input type="checkbox" name="cai"  value="<%=rs1("ID")%>"/></td>     <td><%=rs1("ID")%></td>     <td><%=rs1("cname")%></td>     <td><%=rs1("ctype")%></td>     <td><%=rs1("cprice")%></td>              </tr>     <%     end if     rs1.movenext            loop  end if   %>     <tr align="center">  <td><span class="words">点菜完成请提交:</span></td>     <td><input name="tijiao" type="submit" value="提交" /></td>  <td><input name="jiacai" type="button" value="加菜" onclick="window.location='jiacai.asp'" /></td>     </tr>      <tr align="center">  <td colspan="3"><input name="fanhui" type="button" value="返回首页" onclick="window.location='index.asp'" /> </td>  <td colspan="2"><input name="denglu" type="button" value="管理员登录" onclick="window.location='admin.asp'" /> </td>     </tr> </table> </form>实现搜索的主要代码:<script type="text/javascript"> function doUp()  var qstr=""  $("inputname='cai'").each(function() if(this.checked) if(qstr!="") qstr=qstr+"&" 10  qstr=qstr+"cai="+$.trim(this.value);); window.location.href="slchuli.asp?"+qstr; </script> <table border="0" cellpadding="0" cellspacing="1" width="800" bgcolor="#a8c7ce">  <tr><td  height="20"  bgcolor="#d3eaef" colspan="5"><h2>你好!根据你的输入内容,搜索结果如下:</h2></td></tr>  <tr>     <th width="20%"><%="选择"%></th>  <th width="20%"><%="编号"%></th>     <th width="20%"><%="菜名"%></th>     <th width="20%"><%="类型"%></th>     <th width="20%"><%="价格/元"%></th>  </tr> <%  dim CID  CID=request.Form("cname")  dim rs3,sql3     set rs3=server.CreateObject("adodb.recordset")  dim d:d=CID&"%"     sql3="select * from caiList where ID like '"&d&"'"     rs3.open sql3,conn,1,1     if not rs3.eof then      do while not rs3.eof   %>      <tr align="center">               <td><input type="checkbox" name="cai"  value="<%=rs3("ID")%>"/></td>    <td><%=rs3("ID")%></td>             <td><%=rs3("cname")%></td>             <td><%=rs3("ctype")%></td>             <td><%=rs3("cprice")%></td>             </tr>   <%   rs3.movenext   loop  end if   %> <tr><td colspan="5" align="center"><input type="button" value="提交" onclick="doUp()" /></td></tr>  </table> 点菜后台处理代码:<% dim zhuozi  session("time")=Now()   zhuozi=request("zhuozi") dim ids:ids=split(request("cai"),",") 11  for i=0 to ubound(ids)  sql="insert into diancai (CID,ZID,dtime,number) values('" &trim(ids(i)& "','" &zhuozi& "','" &session("time")& "',1)"  conn.execute(sql)  next  response.write "<div class='js'><h1>点菜成功,3秒后返回首页</h1>" %> <%  sql2="update zhuotai set tablestatus='使用' where ID='"&zhuozi&"'"  conn.execute(sql2)  for i=0 to ubound(ids)  sql3="update caiList set isselected=0 where ID='"&trim(ids(i)&"'"  conn.execute(sql3)  next  conn.close  set conn=nothing %> <script language="javascript"> function  reverse()      window.location.href="index.asp"  setTimeout("reverse()",3000) </script> 结账代码:<form name="jiezhang" method="post" action=""> span class="Keywords">请输入你的桌号:</span> <input name="zhuohao" type="text"  id="zhuohao"/> <input name="tijiao" type="submit" value="确定"/> </form> <%  dim zhuohao     zhuohao=cint(request.Form("zhuohao")    dim rs1,sql1     set rs1=server.CreateObject("adodb.recordset")     sql1="select Max(dtime) as dctime from diancai where ZID="&zhuohao  rs1.open sql1,conn,1,1     if not rs1.eof then   do while not rs1.eof   %>   <%  dctime=rs1("dctime")   rs1.movenext      loop      end if %> <table border="0" cellpadding="0" cellspacing="1" width="800" bgcolor="#a8c7ce">  <tr>     <td colspan="4"><span class="Keywords">你好!你选择的是<%=zhuohao%>号桌,你所点的菜如下:</span></td>     </tr>  <tr>  <th width="20%"><%="编号"%></th>     <th width="20%"><%="菜名"%></th>     <th width="20%"><%="类型"%></th>     <th width="20%"><%="价格/元"%></th>  </tr> <%    dim rs4,sql4    dim i:i=0    set rs4=server.CreateObject("adodb.recordset")    sql4="select CID from diancai where ZID='"&zhuohao&"' and dtime='"&dctime&"'"    rs4.open sql4,conn,1,1    if not rs4.eof then      do while not rs4.eof   %>        <%     dim rs5,sql5        set rs5=server.CreateObject("ad 13        sql5="select * from caiList where ID='"&rs4("CID")&"'"     rs5.open sql5,conn,1,1        if not rs5.eof then      do while not rs5.eof      %>    <tr align="center">      <td><%=rs5("ID")%></td>             <td><%=rs5("cname")%></td>             <td><%=rs5("ctype")%></td>             <td><%=rs5("cprice")%></td>            </tr>     <%   i=i+rs5("cprice")       rs5.movenext            loop        end if    %>  <%          rs4.movenext          loop    session("time")=""    response.write "<tr><td colspan='4'>结账成功!谢谢惠顾!欢迎您的下次光临!<a href='index.asp'>请返回</a></td></tr>"      end if     %>   <tr>  <td colspan="2"><span class="Keywords">你消费总额为:<%=i%></span> </td>   <td colspan="2"><a href="index.asp">返回首页</a></td>  </tr>  </table> <%  dim sql6  sql6="update zhuotai set tablestatus='空闲' where ID='"&zhuohao&"'"  conn.execute(sql6)  conn.close    set conn=nothing %>酒店管理代码:<%  dim youName,youPwd  set rs=server.CreateObject("adodb.recordset")  youName=request.Form("username")  youPwd=request.form("pwd")  if youName="" then  response.Write "<script>window.alert('用户名不能空');history.go(-1);</script>"  else  if youPwd="" then  response.

    注意事项

    本文(餐馆点菜管理系统.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开