网上订餐系统资料.docx
- 文档编号:29364324
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:50
- 大小:805.03KB
网上订餐系统资料.docx
《网上订餐系统资料.docx》由会员分享,可在线阅读,更多相关《网上订餐系统资料.docx(50页珍藏版)》请在冰豆网上搜索。
网上订餐系统资料
1研究的背景
俗话说:
“民以食为天”,随着人们生活质量的提高,对饮食的要求已不仅是解决温饱需求,很多人在进行紧张工作之余会选择享受美食来享受生活,进而进行放松。
餐饮业是一种个性化、多样化的服务产业,随着网络技术的发展和普及,将餐饮服务与个性化、多样化服务的电子商务相结合,形成了方便、快捷、个性化的网上订餐系统,通过网上订餐系统,顾客不必亲临现场,便可以为自己、家人、朋友聚会等置办一份既营养又实惠的美食。
其最大的优势是:
图文并茂,信息能够及时在线更新与查看,并有效地解决了传统就餐过程出现的排队,拥挤,信息变更不能及时等现象。
这样既节省了时间,又为广大用户提供更多选择。
订餐系统基于ASP.Net平台和SQLServer2008数据库开发,实现了网上订餐系统信息的动态管理,对每个订单的信息保管妥善并且及时处理,实现了高度的智能化。
该系统基于B/S(Browser/Server,浏览器/客户端)模式实现,这种结构使得数据只有结果集合在浏览器中显示,数据的处理在服务器进行,用户不用安装客户端,而且由于通过服务器端统一管理数据,易于保证数据的一致性。
2系统需求分析
系统目标
订餐系统的开发目标是为会员进行订餐提供方便,即通过网络实现快捷订餐。
设计原则
订餐系统无论是在应用的深度还是广度上都是一个逐步发展的过程。
开发一个局部系统时要充分考虑到局部系统和整个目标系统之前的相容性和完整性,以利于今后整个系统的建立。
遵循以下三个原则:
1、实用性原则
软件开发的终极目标是为了交付客户,供客户使用,因此要考虑用户的使用习惯以及操作规范,实用性是必须要遵循的规则之一。
在设计网上订餐系统时,可参考其他订餐系统的使用方法和页面布局等,同时也需要根据自身的需要进行调整以适应自身的需求,在功能上要做到简单易用,操作上要做到傻瓜式应用。
2、功能模块化
在设计业务功能模块时,要遵循模块化设计原则,各功能模块间要尽量做到“高内聚、低耦合”。
3、功能需完备
在设计软件时,需考虑到功能完善,给用户良好的体验。
系统功能需求
本系统设计主要有两种用户:
会员和系统管理员。
对于会员来说,具备的主要功能有:
1、会员注册与登录:
用户只用通过注册为会员登录后,才能订餐下单。
2、菜单显示:
用户可以查看当前供应的所有菜品信息。
3、网站公告:
用户可以查看由系统管理员发布的网站公告:
如新菜品、优惠信息、网站维护信息等。
4、购物车:
会员登录后,可以把自己喜欢的菜品加入到购物车,进行订餐,如用户未注册登录,不能进行订餐加入购物车。
5、订单:
会员登录后,可以查看自己的订单信息,也可以在规定时间内进行取消订单。
6、在线留言:
会员登录后,可以再网站进行留言,如对希望新增的菜品等进行留言,等待管理员回复。
对于系统管理员来讲,其主要具备的功能有:
1、订单管理:
可以对会员提交的订单进行管理。
2、菜单管理:
管理员可以对菜单进行增删改查管理。
3、留言管理:
管理员可以回复会员的留言,也可以删除会员的留言。
4、用户信息管理:
可以对会员信息进行增删改查操作。
5、养生信息管理:
可以添加养生菜品信息。
6、友情链接管理:
管理员可以对友情链接进行编辑、修改、删除等操作。
系统需求建模
系统用例图:
用于描述整个系统中各个模块的用例以及用例之间的相互关系。
(1)管理登录、退出用例:
主要用户描述系统管理员的登录与退出操作。
其用例图如下图2-1所示:
图2-1管理员用例图
(2)菜单管理模块用例:
主要用于描述供应菜品的基本信息、菜单信息的添加、删除、修改、审核等操作用例。
其用例图如下图2-2所示:
图2-2菜单信息管理用例图
(3)会员管理用例:
主要描述会员信息,其用例图如下图2-3所示:
图2-3会员管理用例图
如下表2-1所示为系统所有的用例列表,表2-1对本文开发的网上订餐系统的用例表进行了说明和描述。
表2-1系统用例列表
编号
用例名称
描述
001
管理员登录
管理员输入正确的用户名和密码即可登录到系统中去
002
添加菜单信息
向系统数据库中添加菜单的详细信息。
003
查询菜单信息
通过输入菜名或编号,查询出相应菜品的详细信息。
004
修改菜单信息
执行查询用例查询出需修改的菜单信息,修改需修改的信息。
005
删除菜单信息
对下架的菜单信息从系统数据库中删除
006
会员信息添加
向数据库中添加需添加的会员信息
007
会员信息查询
可根据需要设置会员信息。
008
会员信息修改
当会员信息发生变动时,可以直接在查询到的会员处选择修改即可。
009
会员信息删除
当有会员息需删除时,直接对需要删除的会员信息进行删除即可。
010
公告管理
管理发布系统公告。
011
订单管理
对用户提交的订单进行取消、删除等管理
012
留言管理
对用户留言进行回复、删除等
013
养生信息管理
添加、修改、删除养生信息
014
友情链接管理
对链接信息进行增删改查等操作
3系统设计
在需求分析的基础上,提出了如下的系统设计目标:
1.系统安全性
系统应控制不同用户的使用权限,用户不能越权操作。
系统应该确保数据的安全性。
同时,用户要求系统具有高度的可靠性,数据的准确性,系统的可恢复性。
2.可维护性
客户会在系统使用过程中不断对系统提出新要求,扩展系统功能,这就要求系统的可升级性必须良好,以满足客户长期实用的要求,并且在用户有新要求的时候可以快速扩展功能。
3.用户操作
系统设计应该人性化,操作简单方便,达到人机友好的目的。
4.运行速度
系统响应时间是衡量系统性能好坏的重要参考。
系统要求响应时间短,更新处理迅速,数据转换与传送时间短,后台服务器响应迅速等等。
由于系统使用者的特殊性,系统必须高效地响应并且在安全的前提下高效的响应。
5.界面
用户界面应该做到清晰简单一目了然,易于操作。
系统功能分析
本文设计的网上订餐系统基于ASP.NET和SQLSERVER数据库开发设计,其分为前台订餐和后台系统管理两部分,按使用对象可分为系统管理员、会员等。
前台订餐是供会员使用的操作界面,会员登录后在这个页面可以进行查看网站公告、菜单信息、购物车、订单以及在线留言等;后台管理系统是供管理员对系统进行管理和维护的工具,包括订单管理、菜单信息管理、会员信息管理、公告管理、养生信息管理、友好链接管理、留言管理等。
具体方案如下:
1、针对管理员
网站后台管理模块,通过输入正确的用户名与密码进去系统后台并对后台进行管理。
订单管理模块:
可对系统生成的订单信息进行查看、审核、取消、删除等。
菜单信息管理模块:
可对菜单信息进行管理,可添加菜品生成新的菜单,也可删除菜单,并且也可对以存在的菜单进行编辑,对菜品信息进行修改。
会员信息管理模块:
管理员可对注册会员进行管理,如添加、修改、删除会员等。
公告管理模块:
管理员可发布新的公告信息,也可以对已发布的公告内容进行编辑和删除等。
养生信息管理模块:
管理员可根据季节或天气适时提出养生建议或者提供养生菜品等。
友好链接管理模块:
管理员可对友好链接信息尽心添加、修改和删除等。
留言管理模块:
管理员可恢复、删除用户的留言信息。
后台管理功能模块图如图3-1所示。
图3-1系统管理功能模块图
2、针对会员来说
会员注册与登录:
用户可以通过注册的方式成为网站的会员,享受会员的待遇,如菜品优惠等。
菜单显示:
不管用户是否为会员,均可以查询菜单信息,但是当用户查看具体的菜品时,不能将菜品加入购物车进行提交,不能生产订单信息。
网站公告:
不管用户是否为会员,均可以查看网站公告信息。
购物车功能:
只有注册会员登录后,方可把菜品加入购物车进行提交。
订单功能:
只有注册会员登录后,选择自己喜欢的菜品进行提交购买,提交后生成订单,用户可以修改订单,也可以取消订单。
在线留言功能:
会员可以把自己的意见或建议提交给网站,等待网站管理员回复。
其前台主要功能模块图如下图3-2所示。
图3-2会员功能模块图
数据库设计
数据库设计(DatabaseDesign)是针对给定的一个应用场景所进行的数据存储过程及数据存储方式定义,数据库设计是设计管理信息系统的重要部分,在设计时首先进行数据库逻辑设计,其设计要符合语义,然后根据数据逻辑设计,确定其数据存储结构和物理设计,从而确定数据的存储空间分布及存储空间大小分配,从而建立起存储数据的模型。
一个设计良好的数据库结构,应该可以使系统能够快速查询及快速存储。
其设计核心是数据模型的设计,一个好的数据模型可以使数据库设计过程事半功倍,针对不同的应用系统应该采用不同的数据模型,本文设计的网上订餐系统采用关系型模型,具有较高的数据独立性,在使用时也十分方便,这里采用SQLSERVER数据库。
1、数据库表设计
本文设计的数据库名为WebBookDinner,以下列出了本系统所需要的数据表:
表3-1为菜单表,用于保存与菜单的相关信息,包括菜品ID、菜名、价格、菜品介绍、菜单ID、菜品图片以及是否推荐菜品等字段。
表3-1菜单表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
cID
int
4
0
是
是
否
2
菜名
nvarchar
50
0
否
3
价格
float
8
0
否
4
菜介绍
nvarchar
0
0
是
5
Scid
int
4
0
是
6
菜图片
nvarchar
0
0
是
7
推荐
nvarchar
50
0
是
表3-2为菜分类表,用于保存与菜的分类信息,包括菜单ID、菜品种类、系列介绍等字段。
表3-2菜分类表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
Scid
int
4
0
是
否
2
种类
nvarchar
50
0
否
3
系列介绍
nvarchar
0
0
是
表3-3为订单表,用于保存与订单相关的信息,包括订单ID、用户ID、订单状态、联系电话、送餐地址、备注信息、订餐姓名、订餐时间、金额总价等字段。
表3-3订单表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
订单ID
int
4
0
是
是
否
2
用户ID
int
4
0
否
3
订单状态
nchar
10
0
否
4
联系电话
nvarchar
50
0
否
5
送餐地址
nvarchar
50
0
否
6
备注
nvarchar
0
0
是
7
订餐姓名
nvarchar
50
0
否
8
订餐时间
datetime
8
3
是
9
金额总价
float
8
0
是
表3-4为订单条目表,用于保存与订单条目相关的信息,包括条目ID、订单ID、菜名、数量、单价、评分、反馈等字段。
表3-4订单条目表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
ID
int
4
0
是
否
2
订单ID
int
4
0
是
3
菜名
nchar
10
0
否
4
数量
int
4
0
否
5
单价
float
8
0
否
6
评分
int
4
0
是
7
反馈
nvarchar
0
0
是
表3-5为管理员表,用于保存与管理员相关的信息,包括管理员id、管理员密码等字段。
表3-5管理员表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
管理员ID
nvarchar
50
0
是
否
2
管理员密码
nvarchar
50
0
否
表3-6为留言表,用于保存与留言相关的信息,包括留言ID、用户ID、管理员ID、留言时间、留言内容、留言标题、回复内容等字段。
表3-6留言表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
留言ID
int
4
0
是
否
2
用户ID
int
4
0
是
3
管理员ID
nvarchar
50
0
是
4
留言时间
datetime
8
3
是
5
留言内容
nvarchar
0
0
是
6
留言标题
nvarchar
50
0
否
7
回复内容
nvarchar
0
0
是
表3-7为养生信息表,用于保存与养生相关的信息,包括介绍ID、标题、内容、发布时间、浏览次数等字段。
表3-7养生信息表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
介绍ID
int
4
0
是
是
否
2
标题
nvarchar
50
0
否
3
内容
text
16
0
是
4
发布时间
datetime
8
3
是
5
浏览次数
int
4
0
是
表3-8为用户信息表,用于保存与用户相关的信息,包括用户ID、用户名、用户密码、真实姓名、性别、联系电话、爱好、喜欢口味、QQ、电子邮件、状态、身份证号等字段。
表3-8用户信息表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
用户ID
int
4
0
是
是
否
2
用户名
nvarchar
50
0
否
3
用户密码
nvarchar
50
0
否
4
真实姓名
nchar
10
0
否
5
性别
nchar
10
0
否
6
联系电话
nvarchar
50
0
是
7
爱好
nvarchar
0
0
是
8
喜欢口味
nvarchar
0
0
是
9
nvarchar
50
0
是
10
nvarchar
50
0
是
11
状态
nvarchar
50
0
否
12
身份证号
nvarchar
50
0
否
表3-9为友情链接表,用于保存与友情链接相关的信息,包括链接ID、链接地址、图片、链接名称等字段。
表3-9友情链接表表结构
序号
列名
数据类型
长度
小数位
标识
主键
允许空
默认值
说明
1
id
int
4
0
是
是
否
2
地址
nvarchar
0
0
否
3
图片
nvarchar
0
0
否
4
链接名称
nvarchar
50
0
是
在经过需求分析以后,可以把用户的需求进行技术加工,用实体-联系模型(ER图)的形式表达出来,也就是形成用户数据的概念模型。
对于关系型数据库来说,实体型、属性和他们之间的联系构成ER图的基本要素,其其表示方法为:
实体型:
用矩形表示,矩形框内写明实体名;
属性:
用椭圆形表示,并用无向边将其与相应的实体连接起来;
联系:
用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:
1,1:
n或m:
n)。
下面分别介绍每个数据表对应的ER图如下所示:
1、菜单表的ER图如图3-3所示,菜单表包括菜品ID、菜名、价格、菜品介绍、菜单ID、菜品图片以及推荐菜品等实体:
图3-3菜单表ER图
2、菜分类表的ER图如图3-4所示,菜分类表包括菜单ID、菜品种类、系列介绍等实体:
图3-4菜单分类表ER图
3、订单表的ER图如图3-5所示,订单表包括订单ID、用户ID、订单状态、联系电话、送餐地址、备注信息、订餐姓名、订餐时间、金额总价等实体:
图3-5订单表ER图
4、订单条目表的ER图如图3-6所示,订单条目表包括条目ID、订单ID、菜名、数量、单价、评分、反馈等实体:
图3-6订单条目表ER图
5、管理员表的ER图如图3-7所示,管理员表包括管理员ID、管理员密码等实体:
图3-7管理员表ER图
6、留言表的ER图如图3-8所示,留言表包括留言ID、用户ID、管理员ID、留言时间、留言内容、留言标题、回复内容等实体:
图3-8留言表ER图
7、养生信息表的ER图如图3-9所示,养生信息表包括介绍ID、标题、内容、发布时间、浏览次数等实体:
图3-9养生信息表ER图
8、用户信息表的ER图如图3-10所示,用户信息表包括介用户ID、用户名、用户密码、真实姓名、性别、联系电话、爱好、喜欢口味、QQ、电子邮件、状态、身份证号等实体:
图3-10用户信息表ER图
9、友情链接表的ER图如图3-11所示,友情链接表包括链接ID、链接地址、图片、链接名称等实体:
图3-11友情链接表ER图
系统开发环境和运行环境
1.系统开发工具如表3-10所示
表3-10系统开发工具表
属性
要求
开发环境
ASP.NET
数据库管理软件
SQLSERVER2008数据库
2.系统运行环境如表3-11所示
表3-11系统运行环境表
属性
要求
系统
WINXP或WIN7均可
内存
2GB
处理器
2.6GHz
硬盘
500G
4网上订餐系统的详细设计与实现
功能模块设计与实现
登录/注册设计与实现
1、登录模块设计
用户在登录之前需要首先进行用户信息的注册方可进行系统的登录,用户登录需要验证密码是否正确,如果不正确则系统提示密码不正确,需要重新输入密码,否则显示登录成功。
其系统登录流程图如下图4-1所示:
图4-1用户登录流程图
2、注册模块设计
对于新用户注册来说,需要填入一定的信息方可注册成功,尤其是对于系统要求必须填写的选项要求用户在填写注册资料的时候务必进行填写。
如果用户在提交注册信息的时候,出现系统提示该用户已存在,则需要用户重新填写注册信息,方可注册成功。
一旦用户注册成功后,用户名信息无法进行修改,但是其密码可以进行修改。
其用户注册的流程图如下图4-2所示:
图4-2用户注册流程图
3、登录与注册实现
如下图4-3所示为网上订餐系统的首页:
图4-3网站首页
在首页中显示了网站中大部分的信息,通过首页可以跳转的网站中其他的页面,进行相关的操作,登陆模块也是在首页中显示出来的。
在登陆系统之前需要注册,如图4-4所示,注册的信息由游客填写,提交注册信息后,需要通过后台管理员对注册信息进行审核,给予审批后,才能登陆系统。
图4-4用户注册页面
网是订餐服务只有登录以后才能进行,这样确保了订餐服务的有效性,避免预定后,不履行订单的恶意行为。
其用户注册的核心实现代码如下所示:
protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse)
{
stringstate="未审核";
stringuname=tbUserName.Text.Trim();
SqlServerdb=newSqlServer();
db.AddSqlParameter("@uName",uname);
db.AddSqlParameter("@uPwd",tbPWD1.Text.Trim());
db.AddSqlParameter("@真实姓名",tb真实姓名.Text.Trim());
db.AddSqlParameter("@性别",Ddl性别.SelectedValue);
db.AddSqlParameter("@联系电话",tb联系电话.Text.Trim());
db.AddSqlParameter("@爱好",tb爱好.Text.Trim());
db.AddSqlParameter("@喜欢口味",tb喜欢口味.Text.Trim());
db.AddSqlParameter("@QQ",tbQQ.Text.Trim());
db.AddSqlParameter("@email",tbEmail.Text.Trim());
db.AddSqlParameter("@State",state);
db.AddSqlParameter("@身份证号",tb身份证号.Text.Trim());
db.SQL=db.GetInsertSQL("用户表");
db.ExcuteNonQuery();
Response.Write("");
}
菜单信息浏览
在首页中,可以直接浏览到部分的菜单信息,信息包括了:
图片,菜名,价格等。
在该网页上也可以查看菜品的详细信息,如图4-5所示。
另外,在主页上还根据不同的菜系进行分块展示,同时也可以点击每个分块上的“more”字样查看相关的全部信息列表。
例如:
点击查看“凉拌系列”的显示结果如图4-6所示。
图4-5菜品详细介绍
在网站的首页中可以根据用户输入的文字对菜名进行模糊搜索,搜索功能使用户
图4-6“凉拌”系列信息页面
在选择自己需要的菜品时更加便捷和高效。
图4-7搜索
菜单信息浏览的核心实现代码如下所示:
publicpartialclassInfo:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
if(Session["UserName"]!
=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 系统 资料