1、网上订餐系统实验报告网上订餐系统实验报告 目录 1摘要 1Abstract 2第一章前言 31.1开发背景与研究意义 31.1.1本课题的开发背景 31.1.2本课题的研究意义 31.1.3本课题的开发目标 31.2课题调研分析与可行性分析 31.2.1本课题的调研分析 31.2.2本课题的可行性分析 4第二章系统需求分析 52.1性能需求分析 52.2系统用例图 5第三章系统设计 73.1系统总体结构设计 73.2 数据库设计 93.2.1 概念设计 93.2.2 数据结构 103.3系统开发技术 133.3.1系统开发环境及开发工具 133.3.2 系统运行环境 133.4设计到的技术要点
2、 143.4.1 session的使用 143.4.2 ADO.NET技术 143.4.3 文件上传 16第四章详细设计 174.1系统模块详细设计 174.2 登陆模块的流程图 174.3顾客模块详细设计 174.4管理员模块详细设计 19第五章系统实现 225.1系统安装手册 225.1.1系统配置 225.1.2 实施方案 225.2系统运行与操作指南 22第六章结论 286.1系统主要特色与优点接受 286.2系统不足与改进方案 28致谢 30译文 33摘 要本文分析了小型餐饮店管理与发展的现状和面临的问题,发现传统的服务模式已经不能适应市场发展的需求。随着网络技术的发展和普及,方便、
3、快捷、个性化的网上订餐服务正在进入人们的生活。针对这类问题,结合当代科技发展的最新成果,本文构思规划了一套最贴切的服务模式,为餐饮店铺提供区域网络门户,适应不同的客户群。本设计是一个基于互联网的B/S模式的网上订餐系统,能为客户提供网络选择浏览菜品介绍、点菜订餐、送餐等服务。并为管理员提供一个智能的服务平台实现顾客信息与顾客订单的管理,从而提高了服务的质量。本文从系统需求、系统设计、代码实现几方面介绍了整个软件开发过程,其开发平台为Microsoftvisualstudio2005,主要开发语言有C#, JavaScript。关键词:订餐系统 订单管理 C# B/S模式第一章 前 言1.1 开
4、发背景与研究意义1.1.1 本课题的开发背景21世纪,全球网络化,科技在突飞猛进。我们的生活同网络通信息息相关。计算机已经普及到我们社会和经济生活中的各个领域。人们进行信息交流的深度与广度不断增加,这使得我们的服务,管理也应该跟上时代的步伐去前行。电子商务在此得到极大地普及与发展。餐饮业在电子商务中还处于形成的初期;传统的饮食业中,大都是以实际门面的形式来进行宣传与交流的。作为网络普遍化的社会,这还缺少了一些更为现代化的元素。餐饮业是一种个性化、多样化的服务产业,而电子商务则最能体现个性化,多样化服务的商务方式。而且现在大部分电子商务都体现为像大企业服务,结合餐饮这个特殊的行业,终将还发展为向
5、小区域小店铺服务的模式。以最贴切的方式,最灵便的服务进入各个网络社区,进入人们的生活。1.1.2 本课题的研究意义针对餐饮业大背景下的问题与方向,我们可以察觉到在餐饮服务这个大行业中尚有我们可为的地方。本平台提供适合不同人群,最贴切的服务。我们将通过网络平台,去体现服务质量,去创造效益。我们应当抓住,中小店铺,提供区域化餐饮服务这一理念;为它们提供最贴切的服务;把它体现在我们电子商务服务上来,融合到我们软件开发的产品中来;去建立起特色鲜明的订餐网站,以取得最大的经济效益。 综上所述,即采用更先进、更高级的技术手段来设计和开发餐饮服务系统,采用更科学、更合理的方法来解决餐饮服务系统的问题,将为其
6、带来更新的活力,餐饮服务系统也将朝着更准确、更高效的趋势发展前进。1.1.3 本课题的开发目标开发出一个适合餐饮行业,能够满足用户需求的系统。设计并实现一个基于ASP.NET的订餐系统,该系统应具备的功能有:用户权限管理、浏览功能、订单功能等。1.2 课题调研分析与可行性分析1.2.1 本课题的调研分析传统是用人工的方式来进行店铺的各项管理,比如手工进行记录,人工进行顾客个人信息,顾客订餐,订餐信息的管理,口头通知或者是通过移动电话等方式进行关于交易的信息传递与交流,拿最平常的费用统计管理来讲,光是每个顾客的个人消费就是一道令人费解的过程,而在当今计算机技术不断发展的今天,这些问题可以轻而易举
7、的通过计算机和网络来完成,不仅方便快捷,而且简单,易操作。同时对于店铺里的文件管理,过去也多数是以纸质材料进行保存,这样查询起来不仅麻烦不方便,保密性比较差,而且容易磨损,不易保存,另外时间一长,将会产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。如果采用电子文档的方式进行保存,不仅查询起来方便,而且安全性比较高,只有有权限的人才可以看得到,只要多备份几个,而且多处备份也更容易。可以保存很多年,不会发生像传统的纸质材料保存所出现的受潮等一些损坏。1.2.2 本课题的可行性分析1.技术可行性本系统使用.NET技术进行开发,编程语言使用C#、ASP.NET是Microsoft开发的
8、使用于构建、管理Web页面的技术,它的特点主要是:简化网页的编辑工作,提供代码与设计视图分离,使得代码更容易编写、修改与维护;不仅能使用Script语言,还可以使用编译式语言,如本系统所采用的C#,不同的动态网页制作技术还可以使用不同的编程语言;由于ASP.NET代码是预先编译过的,所以运行起来要比ASP的直译方式快。所以ASP.NET是实现本系统的最佳技术,它是完全可行的。此外.NETFramework2.0框架作为微软公司已经比较成熟的产品,现在有越来越多的企业及技术人员选择它来作为开发平台。因此,在技术上.NET是完全可以胜任这个平台的开发。2.经济可行性由于本项目的特殊性,无需投入额外
9、的设备购买及人员培训费用,所以在经济上本系统的开发是可行的。此外系统对开发的需求以及软硬件要求都不是很高,所以在软硬件的支出上十分有限。因此,本系统在任何一台连接Internet的机器上都可以运行,有很高的经济可行性。按上述两方面进行可行性分析、研究后,我们认为该项目在技术上是可行的,在经济上也是没问题的,所以完全可以进行开发。3.操作可行性在操作上对开发人员的要求并不高,WindowsXP操作系统我们已经非常熟悉,而Visual.Studio.Net也是相对容易上手的可视化的编程语言,通过自学完全可以掌握。4.法律可行性本系统没有侵犯个人隐私和个人责任方面的问题,使用本系统不会引起法律方面的
10、纠纷问题,所以开发本系统具有法律可行性。综上所述,本系统的开发是符合现在的实际情况的,并具有一定的实用意义。在技术、经济、操作上,法律上都可以看到此系统的可行性,并且很具有其实现的必要。第二章 系统需求分析随着网络技术的发展和普及,方便、快捷、个性化的网上订餐正在进入人们的生活。目前,网上订餐业务还处于形成期,成长空间还很大。订餐网站是一个基于互联网的B/S模式的网上订餐系统,能为客户提供网络选择餐厅、浏览菜品介绍、点菜订餐、送餐等服务。这有助于提高管理水平,不仅高效,还使的原本繁重的管理变得简单2.1性能需求分析该系统在性能功能应达到如下要求:1.操作简单,界面友好:完全空间式的页面布局,使
11、得菜品、咨询等信息录入的工作更简单:另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见类似的网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现,用户对菜品的预定以及支付方式;2.即使可见:对客户预定餐饮信息的处理(包括录入、删除)将立即在首页的对应栏目显示出来,达到“即时发布,即时见效”的功能3.系统运行应该快速、稳定、高效和可靠;4.在结构上应该具有很好的可扩展性,便于将来功能的扩展和维护。2.2 系统用例图通过对系统的需求分析,系统的基本功能已经大体确定。整个系统的用例图分为两个部分,顾客用例图,管理员用例图,分别见图2-1和图2-2.顾客用例图:图2-
12、1 顾客用例图管理员用例图:图2-2 管理员用例图第三章 系统设计3.1 系统总体结构设计根据第一、二章所做的定义及分析,本课题在此基础上利用和SQLServer2005技术构建基于Web数据库的开发的、信息共享的、动态的交互式平台,该平台可以在基于Windows2005/XP/2003系统构建的局域网或Internet上使用。在总体结构上是采用B/S模式设计,各类商品信息和数据库中的信息在服务器端,采取中心数据库SQLServer统一存放和组织,顾客及系统管理人员在客户机一端,无须任何配置工作,只须使用浏览器向Web服务器代理提出请求,服务代理通过中间组件与数据库链接,把请求服务的内容以We
13、b页面形式通过浏览器反馈给各类用户。本系统面向顾客,管理员两种身份的用户,整个系统的功能模块(见图3-1),整个系统将围绕这个模块进行开发工作,整个系统主要由以下几个子模块组成:顾客模块(见图3-2),管理员模块(见图3-3)。图3-1可以宏观的了解整个系统所涉及到的各个功能模块,以及这些模块所要实现的功能。图3-2介绍了顾客模块所涉及到的流程和要实现的功能。图3-3介绍了后台管理员模块所要实现的各种功能。图3-3管理员模块数据流程图3.2数据库设计3.2.1 概念设计通过分析,系统总共有两种角色,分别是顾客,管理员。分别见图3-4和图3-5。顾客的E-R图如图3-4:管理员的E-R图如图3-
14、5: 图3-5 管理员模块E-R图3.2.2 数据结构数据结构是计算机存储、组织数据的方式。数据结构是相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据库可以带来更高的运行或者存储效率。表3-1 Admin表字段名描述类型长度是否允许为空是否为主键AdminID管理员IDbigint8否是Admin管理员用名varchar50否否Password密码varchar50否否表3-2 Area表字段名描述类型长度是否允许为空是否为主键AreaID, 地址Bigint8否是AreaName 地址名Varchar50否否AreaKM 地址距离Varchar50否否表3-3 Bu
15、yInfo表字段名描述类型长度是否允许为空是否为主键BuyID购买IDbigint8否是FoodID 美食号varchar50否否Num数量varchar50否否OerderID 订单号varchar50否否SunPrice 总价varchar50否否MemberID顾客IDvarchar50否否表3-4 Class表字段名描述类型长度是否允许为空是否为主键ClassID类别号bigint8否是ClassName 分类名称varchar50否否CategoryUrl分类图片路径varchar50否否表3-5 FoodInfo表字段名描述类型长度是否允许为空是否为主键FoodID 文件号bigi
16、nt8否是ClassID 文件类型bigint8否否FoodName 上传路径varchar50是否FoodIntroduce上传者ntext16是否FoodUrl上传时间varchar50是否Maketprice市场价格float8是否MemberPrice会员价float8是否Isrefinement 是否精品bit1是否IsHot是否热销bit1是否AddDate添加时间datetime8是否IsDiscount是否打折bit1是否表3-6 Image表字段名描述类型长度是否允许为空是否为主键ImageID图片IDbigint8否是ImageName图片名varchar50是否Image
17、Url图片径varchar200是否表3-7 Member表字段名描述类型长度是否允许为空是否为主键MemberID会员IDbigint8否是Name用户名varchar50是否Sex性别bit50是否Password密码varchar50是否TrueName真实姓名varchar50是否Questions密保问题nvarchar50是否Answers密保nvarchar50是否Phonecode电话varchar20是否EmailsEmailvarchar50是否City区域varchar50是否Address地址varchar200是否AdvanePayment预付费float8是否Loa
18、Date注册时间datetime8是否表3-8 shopCart字段名描述类型长度是否允许为空是否为主键CartID购物车IDbigint4是是FoodID食物IDbigint50是否Num数目Int50是否SumPrice总价float50是否MemberID会员IDbigint50是否表3-9 OrderInfo字段名描述类型长度是否允许为空是否为主键OrderID订单IDbigint8否是OrderDate文件类型varchar50否否TotaPrice总价varchar50否否MemberID会员IDbigint8否否ReceiverName收货人varchar50否否Receiver
19、Phone收货人电话varchar50否否IsConfirm是否确认bit1是否IsPayment是否已付bit1是否IsConsignment是否已发货bit1是否IsPigeonhole是否已归档big1是否RecerverAddress收货地址varchar50是否receiverEmails收货emailvarchar200是否3.3 系统开发技术3.3.1 系统开发环境及开发工具开发工具对一个系统的成败具有决定性作用。由于本系统是应用于网络的,因此,本系统选择了ASP.NET技术进行开发,同时,选用SQLSever2005作为系统后台数据库,开发中用到的主要开发工具有Microsof
20、tVisualStudio.NET2005、DreamweaverMX 2004,具体如表3-10所示: 表3-10系统开发工具及软件用途表开发工具名称软件用途Microsoft Visual Studio.NET 2005工程管理、代码编写及调试SQL-Server 2005建立系统的后台数据库Dreamweaver MX 2004静态页面的设计、制作3.3.2系统运行环境1.硬件环境:服务器端:配置为1024M内存,CPU为Pentium2.93GHz,硬盘容量为160G的微机。通信网络: Internet网2.服务器端:操作系统: Windows2003/NT/XP/数据库服务器: SQ
21、L SERVER 2005Web服务器:Internet 信息服务5.1或以上版本Microsoft .NET Framework 版本:.NET Framework 2.03.客户端:操作系统: Windows9X/2005/XP/2003浏览器: Internet Explore6.0或以上版本推荐分辨率:1024*7003.4 设计到的技术要点3.4.1 session的使用Session是什么呢?简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运行在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Sess
22、ion,同时服务器会自动为其分配一个Session,用以标识这个用户的唯一身份。这个Session是由WWW服务器随机产生的一个由24个字符组成的字符串,我们会在下面的实验中见到它的实际样子。 这个唯一的Session是有很大的实际意义的。当一个用户提交了表单时,浏览器会将用户的Session自动附加在HTTP头信息中,(这是浏览器的自动功能,用户不会察觉到),当服务器处理完这个表单后,将结果返回给Session所对应的用户。试想,如果没有Session,当有两个用户同时进行注册时,服务器就是通过Session来判断到底是哪个用户提交了哪个表单的。在本次的系统设计过程中基本每个页面都使用了Se
23、ssion技术,它在设计中的地位是举足轻重的。3.4.2 ADO.NET技术ASP.NET引入了新的声明性数据绑定语法,这种非常灵活的语法允许开发人员不仅可以绑定到数据源,而且可以绑定到简单属性、集合、表达式,甚至可以从方法调用返回的结果。数据绑定技术的方便之处在于,当某一个数据源和一个数据显示控件绑定在一起之后,每当数据源发生变换的时候,数据显示控件将自动的跟随数据源变化。当然数据绑定控件并不仅仅为了数据显示控件服务,任何一种符合数据绑定规范的控件都可以绑定到一个数据源。数据绑定的概念,使开发者可以有层次地将控件属性绑定到数据容器的值上,位于代码块中的代码只有父控件容器中的Data Bind
24、方法被调用时才会被执行。Data Bind()是页面和所有服务器控件的方法,当在一个父控件中调用该方法时,它将连接到控件的所有子控件上。Data Bind()通常又Page Load事件调用,它与ASP中Response. Write()方法有很多不同之处。在本系统的设计过程中,大量使用了数据绑定技术,如Dropdown List 的绑定,Data Grid的绑定。比如在搜索功能上所涉及到的代码:public void bindSearchType() string sql = select distinct searchType,type from tb_Search; DataSet ds
25、 = dataOperate.getDataset(sql, tb_Search); ddlSearchType.DataSource = ds.Tablestb_Search.DefaultView; ddlSearchType.DataTextField = searchType; ddlSearchType.DataValueField = type; ddlSearchType.DataBind(); bindKey(); /自定义方法绑定关键字下拉列表 public void bindKey() /获取当前选择的信息类型的表名 string type = ddlSearchType.
26、SelectedValue.ToString(); string sql = select searchKey,keyword from tb_Search where type= + type + ; /调用数据库操作类中getDataset方法并获取返回的数据集 DataSet ds = dataOperate.getDataset(sql, tb_Search); /绑定关键字类别的DropDownList控件的数据源 ddlKeyType.DataSource = ds.Tablestb_Search.DefaultView; /绑定关键字类别DropDownList控件文本的字段名
27、ddlKeyType.DataTextField = searchKey; /绑定关键字类别DropDownList控件值的字段名 ddlKeyType.DataValueField = keyword; ddlKeyType.DataBind(); bindTerminal(); /调用自定义方法是否显示到达地文本框 protected void ddlSearchType_SelectedIndexChanged(object sender, EventArgs e) bindKey(); /显示到达地文本框 public void bindTerminal() /判断关键字类型是否选择了
28、出发地 if (ddlKeyType.SelectedValue.ToString() = Start) txtTerminal.Text = ; /清空到达地文本框 labTerminal.Visible = true; txtTerminal.Visible = true; Else labTerminal.Visible = false; txtTerminal.Visible = false; protected void ddlKeyType_SelectedIndexChanged(object sender, EventArgs e) bindTerminal(); /搜索按钮 protected void btnSearch_Click(object sender, EventArgs e)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1