基于web的订餐管理系统.docx
《基于web的订餐管理系统.docx》由会员分享,可在线阅读,更多相关《基于web的订餐管理系统.docx(24页珍藏版)》请在冰豆网上搜索。
![基于web的订餐管理系统.docx](https://file1.bdocx.com/fileroot1/2023-2/10/38212930-80bf-49b7-871b-5999fc6dede2/38212930-80bf-49b7-871b-5999fc6dede21.gif)
基于web的订餐管理系统
NewlycompiledonNovember23,2020
基于web的订餐管理系统
本科毕业论文(设计)
题目基于web订餐管理系统的设计与实现
系部信息管理系__________
专业信息系统与信息管理
年级2013级
学号
姓名王丹
指导教师郑蔚
成绩
2017年05月10日
菜品展示29
基于Web的订餐管理系统的设计与实现
王丹
西南大学信息管理系,重庆荣昌402460
摘要:
网上基于web的订餐管理系统设计与实现平台的主要功能包括菜单类别管理、菜单信息管理等,根据客户种类又可以划分成管理员客户和会员客户两种。
web的订餐管理系统采用了JSP开发语言为前台设计,MySQL的后台设计作为数据库管理系统,MyEclipse为开发环境,服务器采用tomcat,是一种基于Web技术上开发出的B/S结构的网上基于web的订餐管理系统设计与实现。
关键词:
订餐管理系统;JSP;B/S结构
DesignandImplementationofReservationManagementSystemBasedonWeb
DanWANG
SchoolofInformationManagementofSouthwestUniversity,RongChang,Chongqing402460,PRChina
Abstract:
Throughtheonlineordermanagementsystembasedonwebdesignandimplementationoftheplatform,consumerscanknowalotofwesternrestaurantmenuinformationwithstayingathome,whichbringsgreatconveniencetoconsumers.
ThisdesignatthefrontdesksystemmainlyadoptsJSPasadevelopmentlanguage,andthebackgrounddesignmainlyUSESMySQLasadatabasemanagementsystem,andMyEclipsedevelopmentenvironmentwasadopted,usingtomcatisaWebdesignandimplementationthatbasedonaWebtechnologywhichbasedonB/Sstructureofonlineordermanagementsystem.
Keywords:
Onlineorderingsystem;JSP;B/Sstructure
第1章导论
选题背景目的和意义
网络的快速发展从根本上更改了世界的菜单交易方法,自二十世纪九十年代开始,我国的很多企业就设想可以通过互联网来交易菜单。
因为当时存在很多的原因,比如企业的声誉非常不好进行认证、互联网的相关法律法规也不够完善、物流相对落后等,阻碍了互联网菜单销售的的速度。
进入二十一世纪以后,我国经济有了快速的发展,限制网上交易的各个难题逐一被解决,国内各大企业都加入到了电子商务的浪潮中来。
根据零点调查公司的调查,今年前三季度,我国电子商务市场销售额达万亿元,比去年同期增长24%。
其中,互联网市场销售额近10000亿元,已超过2012年全年销售总额。
网络交易这一点餐方式给人们的日常生活带来了很多方便,除了交易地点更加便捷,更关键的是改变了人们的点餐习惯,人们已经习惯上网查看菜单的相关信息,成为点餐决策环节的至关重要的一环。
课题研究状况和发展趋势
网络讲义与传统方式交易比较最突出的优点:
信息量大,与过去的交易方式比较,网络交易能够提供大量菜单信息。
网络交易最突出的优势是,消费者的交易时间没有限制,客户群得以增加,这样就使企业的核心竞争力得到提高,无需花费商铺费用,大大节省了投入的费用。
第2章系统分析
系统情况分析
系统从技术的可行性、操作的可行性、经济的可行性进行分析。
对软件开发中可能面临的问题做了大概的预测,明确自己的目标。
并且本系统采用的架构是mvc模式。
能够清楚明白的把本系统的情况展示出来。
可行性分析
对所有系统完成设计,都可能受到时间和空间上的制约。
所以,在设计每一个项目开始,必须对系统实行可行性分析,这样可以降低项目的危害,降低人力、物力和财力的损耗。
技术可行性
本系统主要采用MyEclipse和Sql2005数据库作为设计工具,采用Java作为开发语言,主要使用了J2EE的技术,java是一种面对对象的程语言,学习起来非常容易并且使用便利。
本系统从整体上看设计起来比较容易,本系统开发的重点就是对数据库的设计和操作。
经济可行性
本系统采用的软件[10]都是开源的,这样可以削减很多的精力和资源,起到减少成本的作用。
同时提升设计的作用,本系统对计算机配置的条件很低,乃至网吧淘汰下来的低配置计算机也可以满足需要,因此在经济上完全具有可行性。
法律可行性
此网上基于web的订餐管理系统设计与实现是自己设计的管理系统,具有很大的实际意义。
在法律上完全具有可行性。
总而言之,设计一个网上基于web的订餐管理系统设计与实现具有效率高,操作简便,降低成本等优点,所以,建立一个网上基于web的订餐管理系统设计与实现是非常必要的。
综上所述,开发一个网上基于web的订餐管理系统设计与实现是必要可行的。
.系统需求分析
(1)采用B/S模式完成设计,其好处是后台与前台层次运行时比较清晰,并且和大部分用户的网页搜索方式相适宜。
(2)系统界面简单方便。
设计容易的系统界面,可以使用户比较快的对系统的控制进行适应。
性能需求
普通用户只能在线查询信息,例如,对菜单信息进行查询、在线点餐西餐厅菜单、下订单等功能。
(1)所有记录信息要保持全面,信息记录内容不可以是空
(2)各种数据间相互联系要保持正确
界面需求
JSP技术是将JAVA语言作为脚本语言的,JSP网页给整个服务器端的JAVA库单元提供了一个接口用来服务HTTP的应用程序。
系统开发的过程与实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计。
系统数据流程分析
本系统的流程,本系统主要分前台功能模块和后台功能模块两个模块所构成,前台是普通用户模块,普通数据模块又分商品信息浏览,在线下订单,在线注册会员,购物车管理,我的订单管理,后台是管理员用户模块,具体分为以下几个模块,用户注册信息,修改个人密码,商品类别管理,商品信息管理,会员信息管理,订单信息管理,具体的系统流程图如图所示。
图系统流程图
Systemflowchart
本系统的用户通过输入自己的账号密码信息进行登录,根据登录的账号密码比对数据库内的数据来判断登录的账号所具有的权限,管理员拥有所有的权限,能够进行销售和数据管理等所有工作,还可以控制下属账号的权限。
工作人员根据登录账号的类别不同具有不同的权限,分为送单员和接单员两种。
两种不同的用户的权限等级不同,拥有不同的操作权限,只能够在系统中看到自己能够进行操作的模块而不能够看到自己权限以外的模块内容。
要进行别的账号才能进行的操作活动时,需要退出当前登录的账号,重新登录新的账号来进行操作,系统流程如图所示。
图用户注册流程图
Fig.Userregistrationflowdiagram
第3章系统技术与理论介绍
系统模式选择
整个系统采用B/S的模式开发,B/S模式就是浏览器加服务器的结构,在这种结构下,用户的工作界面在浏览器中实现,主要事物逻辑在服务器端实现,还有的事物逻辑在前端实现,并且采用了MyEclipse技术,MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的一种扩展,利用MyEclipse,我们可以在数据库和J2EE的开发中起作用。
完整支持HTML,Struts,JSP,CSS,JavaScript,SQL,Hibernate。
本系统还运用了Tomcat,Tomcat是一个轻量级应用服务器,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,
系统的技术介绍
该系统完全基于当下开发管理系统最前言的B/S模式来进行程序的设计。
使用B/S模式设计的程序对网上订餐系统这种工作人员技术水平较低的客户能够很好的引导他们对系统的操作和使用。
后台数据库使用Microsoft公司开发的MicrosoftSQLServer2005来进行数据的存储,本数据库拥有强大的数据处理能力,能够完美应对零售药店级别的数据的存储和处理。
应用程序开发语言使用的是Java,易于编写且Java一处编写处处运行的特性对于网上订餐系统这种可能在未来会扩大经营规模的用户来说有很强的适应性。
在网页设计方面使用JSP、JavaScript、Html等技术完成用户交互界面,员工只需要浏览器即可对库存、账单等进行操作管理,且界面引导强,有很强的适应性,和使用的便捷性。
服务器方面使用的是当下流行的免费却又不失强劲功能的开源Web应用服务器Tomcat,Tomcat虽为免费使用的服务器,但是其强劲的功能和处理能力完全能够应付网上订餐系统的使用需求,同时能够降低成本。
JSP技术与MVC模式以及系统的基本框架
本系统采用JSP技术,基于MVC模式开发,使用SSH框架(struts2、spring、hibernate)来增加系统的开发速度。
所谓的MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器"。
Hibernate主要用在dao,包括对数据库的增、删、改、查的操作,spring控制程序的流程。
框架的优点
它由以下3个框架构成:
(1)Struts2框架
Struts2是Apache组织的一个开放源码项目。
Struts2是一个比较好的MVC框架,提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Customtaglibrary。
其基本构成如图所示。
图Struts框架工作流程
Figthestrutsframeworkofworkflow
(2)Spring框架
Spring框架由以下7个部分组成,如图所示。
图Spring框架构成
Figurethespringframework
Spring的核心是个轻量级(Lightweight)的容器(Container),它是实现IoC(InversionofControl)容器、非侵入性(Nointrusive)的框架,并提供AOP(Aspect-orientedprogramming)概念的实现方式,提供对持久层(Persistence)、事务(Transaction)的支持,提供MVCWeb框架的实现,并对一些常用的企业服务API(ApplicationInterface)提供一致的模型封装,是一个全方位的应用程序框架(Applicationframework)。
(3)Hibernate框架
Hibernate是一个开放源码的ORM持久层框架。
如图所示。
图框架
Fighibernateframework
SQLServer数据库
支持AIX、FreeBSD、HP-UX、MacOS、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。
为多种编程语言提供API。
这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
MySQL的应用:
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处。
第4章系统设计
系统设计目标与原则
随着科技的进步和发展,人力管理不再适合当前时代的发展潮流,越来越繁杂的工作使人力管理不仅速度缓慢且容易出错,使用机器管理来代替人力管理符合时代发展的方向。
本系统设计目标是以计算机取代繁杂的人工管理,以此来订餐的工作效率,减少人力管理造成出错导致的经济损失以此创造更多的经济效益。
系统功能设计本着降低成本,并且从用户角度出发的原则,根据实际需要,主要要求实用、易学,不仅需要满足订餐系统所主要需要进行的下单,菜品管理,以及考虑订餐人员工能力较低。
系统应该学习简单操作方便。
并且要符合用户所提出的对于系统的合理需求。
系统设计在不违反系统整体性的基础上,应做到可以根据用户的需求进行二次开发,不断完善系统功能,便于系统的不断升级,最终达到完美。
系统设计概要
本系统为网上订餐设计,使用者为订餐系统的的工作人员,其中工作人员分为拥有最高权限的订餐管理员以及下属的实际进行接单、下单、送单工作的工作人员。
管理员具有最高的权限,能够使用本系统的所有功能,同时可以对下属的工作人员的账号进行管理。
工作人员则根据实际的职责分为接单员和送单员两种。
接单员负责菜品的采购、接单和订单的管理,送单员主要负责菜品的接送,二者各司其职。
不同的工作人员拥有不同的操作权限,并且只能进行自己权限范围内的操作,并且不能够越权限进行其他功能的操作。
系统功能模块划分
网上订餐管理系统主要应该具备的功能为系统的管理、销售方面(包括销售、客户信息等)的管理以及采购(包括菜品种类数量价格的管理以及购买和入库)的管理三大方面。
根据网上订餐可能的需求,将本管理系统细分为:
系统管理模块、客户管理模操作员管理模块、采购管理模块、菜品类管理模块其中系统管理模块和操作员管理模块主要为使用人员的部分,作用为添加工作人员账号以及密码的修改。
销售管理和客户管理主要为销售方面的功能,剩余的采购管理、菜品管理等等如图所示。
图系统功能需求分析
Figsystemfunctionrequirementanalysis
第5章数据库设计
数据库的需求分析
目前,电脑系统的关键与核心部分就是数据库。
由于网上订餐系统数据量大,同时为了降低系统成本,这里使用了安全性能高,同时使用较简单,且支持多版本Windows系统的MicrosoftSQLServer2005的数据库,首次接入数据库时操作较为复杂,但接入完成后后续的操作只需要对员工进行适当培训即可完成,事先根据网上订餐系统的需求建立表,使工作人员在日后的使用中只需要简单的添加数据就可以进行操作。
数据库设计
数据库采用成本低,安全性较高,操作较为简单的同时支持多个版本的Windows系统的MicrosoftSQLServer2005。
数据库包含的数据表一共有5个,分别是:
管理员信息表(administrators)、分类信息表(ltypes)、订单条目信息表(Theorderentry)、订单信息表(cg_info)、菜单信息表(menu)
数据库逻辑设计
概念模型设计的典型方法是用E-R图方法,E-R图也即实体-联系图(EntityRelationshipDiagram),其中包含的属性有:
用户名、菜单、订单管理、管理员。
用户这个实体有复数的存在,通过登录账号的等级判断是后台管理员还是一般用户。
各不同身份都有复数的存在。
管理员包含有管理员IP和管理员密码两个实体。
同时管理员还包括管理菜系,管理菜单名。
菜单包含的属性有:
所有分类、原价、菜单名、热销价、销量、热点推荐。
用户包含的属性有用户名、用户密码、姓名、地址、手机、QQ、EMAIL。
最后用户管理菜单、订单,网上订餐管理系统E-R图如图所示。
图数据库逻辑结构设计图
Databaselogicalstructuredesign
数据库表设计
该系统总共使用了5张数据表,包含系统的用户和数据库的主要菜品相关的各类信息,具体的数据库的表的字段名称、数据类型和说明在接下来的数据表结构,画三线图介绍
(1)管理员信息表:
本表的内容是在系统内添加新的账户的内容,关系到添加的账户的各类信息,表内包含的内容有:
用户名、注册时间、邮箱、密码、联系方式、QQ、用户权限、主键为用户名,其中注册时间并非账号必须所以可以不填。
身份等级即为账号的权限,如表所示。
表管理员信息表(administrators)
TableAdministratorinformationtable(administrators)
字段名称
数据类型
主键
非空
字段说明
username
Varchar(255)
yes
yes
用户名
createtime
datetime
yes
no
注册时间
email
Varchar(255)
yes
yes
邮箱
password
Varchar(255)
yes
yes
密码
phone
Varchar(255)
yes
yes
联系方式
qq
Varchar(255)
yes
yes
QQ
role
Int(11)
no
no
用户权限
(2)分类信息表:
本表的内容是分类单据打印的内容,即分类菜品的相关信息,内包含的内容有:
主键、删除、分类名,其中记录分类名为本表的主键。
本表的信息全部必要所以不允许有空。
如表所示。
表分类信息表(ltypes)
Tableclassifyinformationtable(ltypes)
字段名称
数据类型
主键
非空
字段说明
id
Bigint(20)
no
no
主键
catelock
Int(11)
no
no
删除
catename
Varchar(255)
yes
no
分类名
address
Varchar(255)
yes
yes
地址
productname
Varchar(255)
yes
yes
菜单名
(3)菜单条目表:
本表的内容是订单管理的订单信息,即菜品名、单价、数量。
表内包含的内容有:
主键、单价、关联的菜单ID、菜单名、数量、关联的订单ID、其中订单为本表的主键。
本表的信息全部必要所以不允许有空,如表所示。
表订单条目表(Theorderentry)
TableTheorderentryinformationtable(ltypes)
字段名称
数据类型
主键
非空
字段说明
id
Bigint(20)
no
no
主键
price
double
yes
yes
单价
productid
Int(11)
no
yes
关联的菜单ID,外键
productname
Varchar(255)
yes
yes
菜单名
productnum
Int(11)
no
no
数量
(4)订单信息表:
本表的内容是在采购时记录订单的下单信息。
表内包含的内容有:
主键、送货地址、添加时间、订单号、联系电话、订单状态、总价格、订单的用户名。
其中联系电话为本表的主键。
本表的信息全部必要所以不允许有空,如表所示。
表订单信息表(cg_info)
Tableindengtinformationtable(cg_info)
字段名称
数据类型
主键
非空
字段说明
id
Bigint(20)
no
no
主键
address
Varchar(255)
yes
yes
送货地址
createtime
datetime
yes
yes
添加时间
orderid
Varchar(255)
yes
no
订单号
phone
Varchar(255)
yes
yes
联系电话
status
Int(11)
no
no
订单状态
totalprice
double
yes
yes
总价格
username
Varchar(255)
yes
yes
订单的用户
(5)菜单信息表:
本表的内容是在系统类的菜单的各类信息,主要用于菜单的管理和查询。
表内包含的内容有:
添加时间、图片路径、简介、菜单名、是否推荐、原价、热销价、商品是否删除的标志、销量、外建等等。
其中订单ID为本表的主键。
本表的信息全部必要所以不允许有空,如表所示。
表菜单信息表(menu)
Tablemenuinformationtable(ltypes)
字段名称
数据类型
主键
非空
字段说明
id
Bigint(20)
no
no
主键
createtime
datetime
yes
yes
添加时间
imgpath
Varchar(255)
yes
yes
图片路径
Info5
Varchar(255)
yes
yes
简介
name
Varchar(255)
yes
no
菜单名
newstuijian
Int(11)
no
yes
是否推荐
Price1
double
yes
yes
原价
Price2
double
yes
yes
热销价
productlock
Int(11)
no
yes
商品是否删除
xiaoliang
Int(11)
no
no
销量
cateid
Bigint(20)
yes
yes
关联的分类ID,
第6章系统实现
开发一个MIS的过程中,必须要通过需求分析、系统的设计、再后来就是进行代码实施阶段。
在需求分析和系统设计过程中,主要是把需求转换为数学模型,或者程序模型,用计算机的方式把信息描述出来,最后通过计算机语言,来实现,来完成MIS系统的设计。
本章主要具体介绍各模块的界面以及各模块所实现的功能,同时展示模块内的部分重要内容的实现代码。
本零售药店管理系统一共分为:
系统管理模块、操作员管理模块、客户管理模块、采购管理模块、菜品管理模块。
后台登陆页面
(1)描述:
系统必须有安全性验证,本系统通过输入登录名和权限密码,使用ajax方式,提交到后台servlet进行验证,异步权限验证,来实现系统的安全性验证,如果输入正确,就能登陆到管理系统。
(2)程序运行效果图如图所示。
图管理员登陆页面设计
Figtheadministratorloginpagedesign
(3)本模块实现代码如下:
loginservice关键代码:
publicStringlogin(StringuserName,StringuserPw,intuserType)
{
try
{
(700);
}catch(InterruptedExceptione)
{
ind(sql,con);
if()==0)
{
result="no";
}
else
{
WebContextctx=();
HttpSessionsession=();
TAdminadmin=(TAdmin)(0);
("userType",0);
("admin",admi