1、湖北民族学院信息工程学院软件编程实训设计报告书 题目: 餐馆点菜系统的开发 专 业: 电气工程 班 级: 0312422 学 号: 031240717 学生姓名: 陈昊 指导教师: 钟 建 伟 2013年 9 月 18 日 湖北民族学院信息工程学院软件编程实训任务书 学生姓名 陈昊 学 号 031240717
2、 成 绩 设计题目 餐馆点菜系统的开发 设 计 内 容 开发餐馆点菜系统。系统具有点菜、结账、查询、统计、设置功能。 设 计 要 求 开发餐馆点菜系统。系统具有点菜、结账、查询、统计、设置功能。点菜时可用菜名的拼音简码搜索菜。查询功能包括查询菜和点菜单。统计可统计一天的营业额。设置功能包括查询操作员和菜。系统采用B/S结构,用ASP开发,后台数据库采用SQL Server 2005. 时 间 安 排 ① 系统分析与设计阶段(2天) ② 程序编制与调试阶段(5天) ③ 总结报告和书写
3、说明书阶段(2天) ④ 答辩与考核阶段(1天) 参 考 资 料 [1] 赵慧勤.网络数据库应用技术.北京:机械工业出版社,2004. [2] 柳青,刘渝妍,何文华.Visual Basic程序设计教程[M].北京:高等教育出版社, 2000. [3] 王春才,高春艳,李俊民. Visual Basic数据库系统开发完全手册[M]. 北京:人 民邮电出版社,2004. [4] 杨富国,王健,王倩. Visual Basic程序开发案例解析[M].北京: 清华大学出版 社,2005. [5] 齐治昌,谭庆平,宁洪.软件工程[M].北京:高等教育出版社,2004.
4、 目录 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 总结 11 参考文献 12 附录 13 菜单主要代码: 13 实现搜索的主要代码: 15 点菜后台处理代码: 16 结账代码: 16
5、 酒店管理代码: 17 1 任务的提出与方案论证 1.1 研究背景及意义 目前,我国酒店餐饮业在日常点菜管理中仍普遍采用手工操作方式,整体科技含量低,随着酒店餐饮业高速发展和餐饮店规模的不断扩大,许多酒店餐饮企业采用连锁经营和集团化运营,手工操作无论是在工作效率、人力成本和决策信息等方面都已经难以适应企业发展的要求,制约了整个酒店餐饮业的规模化发展和整体服务水平的提升。据预测,未来3至5年内,信息数字技术产品在中国饭店与餐饮业的应用将达到一个高峰,市场最大容量可达2300亿元人民币。就点菜系统而言,最普遍的是计算机收银台录入菜单设备、POS点菜系统,除了这种
6、点菜系统,其它的计算机信息系统已经从预订、接待、点菜、菜品上传、厨房分单打印、条码划菜、收银、经理查询等方面在大型餐饮企业全方位地整合起来了。 1.2国内外研究现状 餐饮业在二十世纪七十年代之前,一直采用传统的手工服务模式。在计算机信息技术发展的二十世纪下半叶,越来越多的企业意识到信息技术发展的重要性。一些食品服务系统和电子信息管理系统的开发出来,而且在一些企业已经开始使用,这也促进了餐饮业的迅速发展和进步。网络技术在八十年代末至九十年代中期发展迅速,人机交互不断发展,出现了液晶屏这个终端前两,在这期间,系统之间通常是以有线的方式进行连接。而入境,网络信息技术发展有了大突破,数
7、据库技术和网络技术在很多方面都得到了多方面的运用和完善。网络技术也拓展了餐饮服务,如今消费者不但可以远程订餐,还可以网上支付,订餐、就餐、结账、足不出户就可完成。 1.3本文研究内容 本论文对各大酒店的酒店点菜管理系统的工作需求进行了全面的分析。采用B/S三层软件体系结构,以Windows为操作平台,Java为开发语言,SQLServer2008为数据库,Eclipse为开发工具,使用JDBC连接。 本论文的重点工作包括在系统中实现了按角色的访问控制,对系统数据进行分析、排序。 2 设计思路 2.1 需求分析
8、 本系统的总目标是为用户提供迅速、高效的服务,减免手工处理的繁琐与误差,及时、准确地反映酒店的工作情况、经营情况,从而提高酒店的服务质量,获得更好的经济效益。其具体目标包括: (1)快速完成顾客的点餐。 (2)准确无误地记录顾客的每笔消费记录。 (3)实时、快速、准确地提供最新餐单。 (4)方便查询顾客消费情况。 (5)方便查询酒店的营业额情况。 2.2 软件体系结构设计 餐馆点菜系统数据流程图,如图2.1所示。 点菜 D3顾客点菜信息 结账 D2菜品信息 处理订桌 服务员 D1桌台使用情况 前台 顾客 获取桌台 桌台情况 图2
9、1数据图 2.3 数据库设计 2.3.1 逻辑结构设计 辑结构设计的任务就是把概念模型结构转换成某个具体的DBMS所支持的数据模型。设计逻辑结构时,首先是将概念结构转换为一般的关系、网状、层次模型,其次是将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换,最后是对数据模型进行优化。 关系模式如下:菜(菜编号,菜名,类型,价格,状态); 桌台(桌台编号,桌台名称,状态,服务员); 服务员(编号,姓名,性别,年龄,电话); 管理员(编号,名称,密码)。 2.3.2 物理结构设计 据库的物理结构设计是对于给定的逻辑数据模型,选取一
10、个最合适应用环境的物理结构。数据库的物理结构指的是数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统,是在数据库逻辑结构的基础上设计出一组能够满足实际需求的关系、约束、和索引等信息。餐饮点菜系统的数据库表结构如下: (1) 服务员基本信息表,如表2.1所示。 表2.1服务员基本信息表 属性中文名称 属性名 类型 长度 说明 服务员号 ID Int 酒店统一编号,具有唯一性 服务员名称 Watiername Nvarchar 50 服务员名称 服务员性别 Sex Char 10 服务员性别 服务员年龄 Age Char 10
11、 电话 Tel Nvarchar 50 表2.1 3 详细设计 3.1 数据库连接文件 conn.asp文件负责建立与数据库的连接,并创建了关闭连接的过程。该文件为系统的公共文件,在其他要实现数据操作的文件中会调用此文件,该文件的代码如下: <% dim conn,connStr set conn=server.CreateObject("adodb.connection") connStr="PROVIDER=SQLOLE
12、DB;DATA SOURCE=XDNGS-90EBAEBEE\SQLEXPRESS;UID=sa;PWD=123;DATABASE=keshe" conn.open(connStr) %> 3.2 客户端首页 客户端首页由多个文件构建而成,其应用界面如图3-1所示 图3.1 客户端首页 3.3 酒店餐饮点餐 顾客通过首页顾客点餐可以进入酒店餐饮点餐界面,该界面列出了当前酒的可用空桌号和酒店的菜谱列表,顾客可以通过自己的喜好进行点餐、加菜或返回首页。在该页上还设置了搜索功能,顾客可以通过拼音简码搜索自己喜欢的菜,界面如图3-2所示。 图3.2 菜
13、品信息 3.4 主要代码 主要代码如下: img src="images/3.jpg" />
以下是现在酒店的空桌和菜谱,我们热忱为您服务: ⑵ 实现搜索处理的主要代码如下:你好!根据你的输入内容,搜索结果如下: | ||||
| <%="选择"%> | <%="编号"%> | <%="菜名"%> 38、 | <%="类型"%> | <%="价格/元"%> |
|---|---|---|---|---|
| "/> | <%=rs3("ID")%> | <%=rs3("cname")%> | <%=rs3("ctype")%> | <%=rs3("cprice")%> |
41、 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 "
42、" 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 %> 结账代码:
<% dim zhuohao zhuohao=cint(request.Form("zhuohao")) dim rs1,sql1 set44、 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 %>
| 你好!你选择的是<%=zhuohao%>号桌,你所点的菜如下: | |||
| <%="编号"%> | <%="菜名"%> | <%="类型"%> | <%="价格/元"%> 46、h> |
|---|---|---|---|
| <%=rs5("ID")%> | <%=rs5("cname")%> | 48、><%=rs5("ctype")%> | <%=rs5("cprice")%> |
| 结账成功!谢谢惠顾!欢迎您的下次光临! 49、asp'>请返回 | |||
| 你消费总额为:<%=i%> | 返回首页 |
50、ose 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 "" else if youPwd="" then response.