湖北民族学院信息工程学院软件编程实训设计报告书题目: 餐馆点菜系统的开发专业:电气工程班级: 0312422学号: 031240717学生姓名:陈昊指导教师:钟建伟2013年 9 月 18 日湖北民族学院信息工程学院软件编程实训任务书目录1 任务的提出与方案论证 (4)1.1 研究背景及意义 (4)1.2国内外研究现状 (4)1.3本文研究内容 (4)2 设计思路 (5)2.1 需求分析 (5)2.2 软件体系结构设计 (5)2.3 数据库设计 (5)2.3.1 逻辑结构设计 (5)2.3.2 物理结构设计 (6)3 详细设计 (7)3.1 数据库连接文件 (7)3.2 客户端首页 (7)3.3 酒店餐饮点餐 (7)3.4 主要代码 (8)3.5 酒店餐饮结账 (10)4 总结 (10)参考文献 (11)附录 (12)菜单主要代码: (12)实现搜索的主要代码: (15)点菜后台处理代码: (15)结账代码: (16)酒店管理代码: (16)1 任务的提出与方案论证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所示。
图2.1数据图2.3 数据库设计2.3.1 逻辑结构设计辑结构设计的任务就是把概念模型结构转换成某个具体的DBMS所支持的数据模型。
设计逻辑结构时,首先是将概念结构转换为一般的关系、网状、层次模型,其次是将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换,最后是对数据模型进行优化。
关系模式如下:菜(菜编号,菜名,类型,价格,状态);桌台(桌台编号,桌台名称,状态,服务员);服务员(编号,姓名,性别,年龄,电话);管理员(编号,名称,密码)。
2.3.2 物理结构设计据库的物理结构设计是对于给定的逻辑数据模型,选取一个最合适应用环境的物理结构。
数据库的物理结构指的是数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统,是在数据库逻辑结构的基础上设计出一组能够满足实际需求的关系、约束、和索引等信息。
餐饮点菜系统的数据库表结构如下:(1)服务员基本信息表,如表2.1所示。
表2.13 详细设计3.1 数据库连接文件conn.asp文件负责建立与数据库的连接,并创建了关闭连接的过程。
该文件为系统的公共文件,在其他要实现数据操作的文件中会调用此文件,该文件的代码如下: <% dim conn,connStrset conn=server.CreateObject("adodb.connection")connStr="PROVIDER=SQLOLEDB;DATASOURCE=XDNGS-90EBAEBEE\SQLEXPRESS;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="showResul t.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,sql2set rs2=server.CreateObject("adodb.recordset") sql2="select * from zhuo tai where table空闲'" rs2.open sql2,conn,1,1 if not rs2.eof thendo while not rs2.eof%><input type="radio" name="zhuozi" value="<%=rs2("ID")%>" /><%=rs2("ID")%> < % rs2.movenextloopend 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%><tralign="center"bgcolor="#FFFFFF"onMouseMove="javascript:this.bgColor='#33CCFF';" onMouseOut="javascript:this.bg Color='#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%><tralign="center"bgcolor="#FFFFFF"onMouseMove="javascript:this.bgColor='#33CCFF';" onMouseOut="javascript:this.bg Color='#FFFFFF';"><td><inputtype="checkbox"name="cai"value="<%=rs1("ID")%>"/></td><td><%=rs1("ID")%></td> <td><%=rs1("cname")%></td> <td><%=rs1("ctyp e")%></td> <td><%=rs1("cprice")%></td> </tr><% end ifrs1.movenextloopend if%><tr align="center"><td><span class="words">点菜完成请提交:</span></td> <td><input name="tijiao" type="submit" value="提交" /></td> <td><inputname="jiacai"type="button"value="加菜"onclick="window.location='jiacai.asp'" /></td></tr><tr align="center"> <td colspan="3"><input name="fanhui" type="button" val ue="返回首页" 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=""; $("input[n ame='cai']").each(function(){ if(this.checked){ if(qstr!="") qstr=qstr+"&";3.5 酒店餐饮结账通过首页顾客结账通道可以进入酒店餐饮结账界面,如图3-3所示4 总结本文描述了酒店餐饮点菜系统的设计与实现,该系统是运用SQL2005数据库系统和ASP 开发实现的。