电子商城毕业设计Word文档下载推荐.docx
《电子商城毕业设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《电子商城毕业设计Word文档下载推荐.docx(35页珍藏版)》请在冰豆网上搜索。
![电子商城毕业设计Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/26/53097f5a-b9ed-493d-9830-eb1e69892bba/53097f5a-b9ed-493d-9830-eb1e69892bba1.gif)
本文主要划分为五大模块,首先是一些基本的程序界面的浏览以及功能的介绍等,然后是数据库的设计,第三块主要集中在webServer构建上,第四块是用户模块的构建,第五块是管理员模块的构建。
第1章程序浏览与功能划分
1.1功能模块划分
首先电子商城无论那种方式(B2B;
B2C)其流程都是以下几个步骤,即浏览查看商品、进行订购并下订单、双方确认然后付款交货,完成交易。
本设计按照实现功能来划分,主要包括两大模块:
(1)用户模块
(2)管理员模块
1.1.1用户模块
其中,用户模块是对一个用户而言所看到的界面,用户通过该模块来实现起购买交易的全部功能,而这些功能可以细分为以下几个部分:
(1)用户注册/登录/验证模块。
(2)公告/特价书籍/最新书籍浏览模块。
(3)全部书籍/全部特价书籍浏览模块。
(4)购物车模块。
(5)服务台模块。
一个详细的用户端流程图如图1-1所示。
1.1.2管理员模块
管理员模块则是后台管理员所看见的界面,管理员是通过这部分功能来管理书城的,具体划分以下几个部分。
(1)管理员登录模块
(2)库存管理模块(包括添加数据/删除数据/设定特价书籍)
(3)管理员管理模块(包括添加管理员/删除管理员/修改管理员信息)
(4)订单管理模块(包括订单确认/订单发送)
(5)用户管理模块(包括用户信息查询/用户删除)
(6)公告管理模块(发布新公告/删除公告)
一个详细的管理员流程图如图1-2所示。
图1-1用户端流程图
图1-2管理员端流程图
1.2程序运行浏览
1.2.1用户模块运行浏览
1.用户注册登录验证模块
用户注册功能是为了用户订购书籍、发送书籍、记录用户订单服务功能,用户浏览商城不需要关于自己的信息,但是用户的购买功能呢着需要确定身份,所以,用户的注册、登录、验证必不可少。
在这个模块下主要包括的功能如下:
(1)用户注册:
新用户输入相应信息。
(2)用户登录:
用户输入用户名,密码,以获得身份确认。
(3)个人信息浏览:
用户可以查看自己的各种信息。
(4)个人信息修改:
用户可以修改自己的一些基本信息。
(5)查看用户订单:
用户可以查看自己的所有订单,并且可以查看每一个订单的确认发送情况。
用户登录前的登录信息编号如图1-3所示。
图1-3用户登录注册页面
2.首页
在一个用户来到书城后,首先应该看到的是商城首页,而为了要能够最大限度的吸引顾客,首页放置的内容应该是最吸引顾客的版块,而这里自然就是特价书籍/最新书籍版面了,所以,首页上要以这两块内容为主,然后还可以添加公告版块,以此发布一些重要信息。
首页的最后界面如图1-4所示。
图1-4首页页面
3.全部书籍/全部特价书籍浏览模块
在这个模块中,用户可以挑选自己想要的书籍,查看书籍祥情,也可以订购书籍,同时用户可能对特价书籍特别感兴趣,而首页由于内容限制,不可能列出全部特价书籍信息,所以提供一个特价书籍查看模块也是十分必要的。
同时为了方便用户浏览,对书籍的分类也是必须的,并且也应该支持用户的分类浏览,最后的书籍浏览模块如图1-5:
图1-5书籍浏览页面
4.购物车模块
购物车是电子商城中一个非常重要的模块,他就是是超市的推车,看到喜欢的商品就把商品装进去,不喜欢就拿出来,而且可以随意修改拿进去的数量,并且查看购物车实惠吧所以购物车中的商品信息显示出来,并会显示出每个物品的单价以及所有总价。
一个用户对应一个购物车这个在用户购物的始终是一致的。
购物车界面如图1-6:
图1-6购物车页面
5.服务台模块
这个模块就是最后的结账模块,在这个模块中会显示用户所有的购买书籍,被给出相应超大的信息,让用户添加收件人的信息。
模块界面如图1-7:
图1-7服务台页面
1.2.2管理员模块功能浏览
1.管理员登录模块
管理员想要到呢个了后台以管理网站,则必须输入用户名和密码来获得验证,而且为了安全起见,一般完整后台登陆页面的地址是不会在用户模块中显示出来的,而是直接告诉管理员。
管理员模块登陆界面如下图1-8:
图1-8管理员登录界面
2.库存管理模块
库存管理是一个十分重要的模块,管理员可以在这里为用户提供商品服务,完成对书籍的添加,删除,库存的管理主要包括以下几个内容:
(1)添加、修改书籍。
(2)修改书籍信息。
(3)设置、取消特价书籍。
库存管理模块界面如下图1-9所示。
图1-9库存管理模块
3.管理员管理模块
在这个模块中,可以实现对管理员的管理,在一般的电子商务网站中,一般对管理员进行分级,对每一级管理员分配相应的权限,互相不能越权。
当然了咱就没那么多规矩了,只设置一级权限。
这个模块的主要功能有:
(1)查看管理员信息。
(2)添加管理员。
(3)删除管理员(自己本身和最开始设置的默认管理员不能删除)。
管理员列表查看界面如下图1-10。
图1-10管理员列表查看
4.订单管理模块
订单管理模块直接关系到用户所购买的货物的发放问题,在用户生成了一个订单后,管理员开始对订单进行处理,首先是必须确认订单所输入的信息的正确性,这个主要通过电话核实,然后则是法师货物,在发送货物之后,订单的状态会被标记为“已发送”
这个模块的主要功能如下:
(1)订单查看。
(2)订单状态的设置。
(3)订单删除。
订单列表界面如下1-11,订单详细信息界面如图1-14
图1-11订单列表界面
图1-12订单详细信息
5.用户管理模块
这个部分的主要功能就是查看用户信息和删除用户。
6.公告管理模块
这个部分主要是发布商城的各种重要信息,这里生成德公告会在首页上显示出来,以提醒用户相应的信息。
主要功能包括:
(1)公告信息的修改
(2)添加新的公告
(3)删除公告
添加新公告界面如图1-17
图1-17添加新公告界面
第2章数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏直接对应用系统的效率及实现的效果产生影响。
合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
设计数据库系统时应该首先充分了解用户在各个方面的需求,包括现有的及将来可能增加的需求。
2.1数据库设计构建
2.1.1设计数据库
用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能满足各种信息的输出和输入。
收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
通过上述系统功能的分析,针对一般B2C销售系统,总结出需求信息:
请参看附录。
2.1.2数据表间关系描述
根据表的设计总结下面的表间关系描述。
(1)Z_goodsInfo表与Z_GoodsType表是多对一的关系;
表示一个商品对应一个商品类型,而一个商品类型可以有多个商品。
(2)Z_adminInfo表与Z_BulletinInfo表式一对多的关系;
表示一个管理员可以发布多个公告,而一个公告只能由一个管理员发布。
(3)Z_adminInfo表与Z_orderInfo表是一对多的关系;
表示一个管理员可以确认多个订单,而一个订单只能被一个管理员确认。
(4)Z_orderInfo表与Z_UserInfo表式多对一德关系,表示一个订单只能别一个用户订购,而一个用户可以订购多个订单。
(5)Z_orderInfo表与Z_orderdetail表式一对多的关系;
表示一个订单对应多个订单详细表,而一个订单详细表对应一个订单。
第3章通过WebService构建功能函数
3.1webservice概述
Web服务是一种web应用程序,他没有传统的web应用程序的用户界面,而是提供可以调用的API函数,也就是读者熟悉的Internet上的web方法。
为什么用webservice呢,因为我们的例子中有好多地方要经常用到同一个函数,所以为了节省代码量,考虑用webservice来创建这些函数。
(暂时理解为公用API就行。
)
3.2第一个webservice的函数
首先需要写到的webservice函数自然就是对使用最多的数据库进行操作的函数。
创建一个webservice文件,打开webservice.cs在webservi的类里添加数据库德操作函数,代码如下:
publicvoidExcuteSql(stringstrSql)
{stringstrConn="
DataSource=ADIR;
InitialCatalog=shop;
UserID=****;
Password=****"
;
DbProviderFactorydbProviderFactory=DbProviderFactories.GetFactory("
System.Data.SqlClient"
);
DbConnectiondbconn=dbProviderFactory.CreateConnection();
dbconn.ConnectionString=strConn;
dbconn.Open();
//打开连接
DbCommanddbcomm=dbProviderFactory.CreateCommand();
//设置命令
dbcomm.Connection=dbconn;
//绑定连接
dbcomm.ExecuteNonQuery();
//绑定sql
dbconn.Close();
dbconn.Dispose();
}
以上代码只能处理无返回的sql语句,对于select语句无能为了,为此这里在添加一个select语句的操作函数。
publicDataTableExcuteSelect(stringstrSql)
Pssword=****"
DbConnectiondbConn=dbProviderFactory.CreateConnection();
//设置连接
dbConn.ConnectionString=strConn;
dbConn.Open();
//打开连接
DbCommanddbComm=dbProviderFactory.CreateCommand();
dbComm.Connection=dbConn;
//绑定连接
dbComm.CommandText=strSql;
//绑定Sql
DbDataAdapteradapter=dbProviderFactory.CreateDataAdapter();
adapter.SelectCommand=dbComm;
DataSetdsDataSet=newDataSet();
//初始化dataset
adapter.Fill(dsDataSet,"
table"
//填充书籍到数据表
returndsDataSet.Tables["
];
//返回数据表
在这个方法中,返回一个DataTable。
这样,对书籍库操作的功能函数就添加成功了,在本节中,暂时只添加这两个功能函数,在编程过程中遇到了在添加新的函数。
第4章用户模块下的网站整体风格构建
4.1构建用户登录和欢迎页面
对于一个网站而言,保持页面的一致性事一个很重要的部分,而在2.0中提供的一个新的手段就是MasterPage。
对于MasterPage这里暂时不进行深入介绍,这里只做简单应用。
可以看出在本设计中,各个模块的浏览过程中可以看到界面图中每一页的最上面都是同样格式的一个功能面板,用来提供各种链接。
这些面板如果在每一个页面中都添加一次,会产生十分多的重复。
下面就用MaserPage来实现“添加一次,全部应用”的功能。
4.1.1添加主功能面板
具体步骤如下:
在“解决方案资源管理器”面板中选择“添加新项”,然后选择“母版页”,改名为User.master,
打开user.master页面,选择设计模式,
注意到其中的ContentPlaceHolder部分,那个是留给内容页的空间,即只有在内容页的部分是每个页面的特殊之处,其他的地方则是所有页面都统一的界面。
在页面上除了ContentPlaceHolder部分以外的地方开始创建主功能面板。
具体操作时:
首先添加一个表单,然后再表单上添加4个Hyperlink控件,用来连接其他面,暂时可以先不设置属性,一个linkbutton控件,用来完成退出功能。
4.1.2添加登录控件
为了构建登录面板,这里通过一个用户控件来实现,在项目中添加一个用户控件取名为userLogin.ascx
打开userLogin.ascx,在设计模式中添加相应的控件;
一个table控件和两个textbox控件,用来获得输入,还有一个lable控件用来显示提示信息。
添加相应的功能代码,双击登录按钮,添加click事件代码。
注意在判断用户登录信息正确后的语句,分别创建了两个session,其中session[“UserLevel”]用来区别该用户的级别,这里分为两个级别,一个是user,表示用户,一个是admin,表示管理员。
而session[“UserID”]则用来标记该用户。
此外注意这个语句:
Response.Redirect(Request.CurrentExecutionFilePath);
由于用户登录可以发生在多页面之中,并不一定要求在一开始就登录(这与编写论坛不同),所以,登录之后切换的页面不能是首页,而是当前页。
Request.CurrentExecutionFilePath就是获得当前页面的路径。
“注册”按钮的代码更为简单,就一个转向函数,如下:
Response.Redirect(“User_Register.aspx”);
在母版页面中添加该用户控件,方法很简单,直接拖动该文件至相应位置即可。
4.1.3添加欢迎控件
同样通过构建一个用户控件来显示欢迎信息。
在项目中添加一个新的用户控件,取名为UserWelcom.ascx。
打开该页面,向其中添加一个table控件和一个label控件,用来显示用户名,还有两个HyperLink控件,用来连接到相应的功能页面。
为了显示相应的用户名,需要添加一些代码,这里会第一次用到webService。
打开Userwelcome.ascx.cs文件,首先在主类中创建一个新的webservice对象。
语句如下:
WebServicewebService=newWebService();
然后再page_Load方法中添加代码。
其中的判断条件是session[“UserID”]是否为空,如果不是,则表示已经登录了。
接下来看下面这条语句:
DataTabledtTable=webService.ExcuteSelect(strSql);
得到数据表。
这里可以看到对webService的使用就和普通的类没有什么区别。
通过输入参数STRSQL,执行前面编写的ExcuteSelect方法,返回一个dataTable。
同前面一样,将这个控件添加到User.master页面中。
这里可能会问,为什么这两个控件同时都在页面上?
这里就需要对控件的显示条件作出判断了,打开user.master.cs文件,在page_load方法体中添加代码:
if(Session["
UserLevel"
]==null)//如果用户没有登录
{
this.login.visible=true;
//显示login控件
this.welcome.Visible=false;
//不显示欢迎控件
elseif(Session["
].ToString()=="
User"
)//如果登录为普通用户
this.login.Visible=false;
//不显示login控件
this.welcome.Visible=true;
//显示欢迎控件
判断条件就是session[“UserLevel”],如果为空,则显示登录控件,隐藏欢迎控件;
如果为User,则相反。
4.2书籍分类导航面板的构建
添加一个用户控件,取名为sortTree.ascx.在其中添加一个TreeView控件。
为了能够正确显示出类型树的结构,需要添加后台代码。
具体代码请查看SortTree.ascx.cx文件。
利用递归,就能够得到类型树的TreeView.
当选到某个节点的时候,首先判断session[“UserLevel”],如果为管理员,则跳转到管理员的书籍列表页面,否则跳转到用户看到的书籍列表页面。
注意:
由于一个页面往往会有很多的链接页面,这些页面现在还没有生成,但是我们只需要记住其代表什么意思就行,后面会详细说明
最后将这个用户控件添加到母版页中即可。
这时,网站的大体模板已经建立好了,下面将开始添加一个一个具体的页面。
最终界面如图4-1所示:
图4-1母板页最终界面展示
第5章用户模块的构建
5.1构建用户模块组成界面
5.1.1首页的构建
在整个商城中,首先被用户所看到的自然就是商城的首页,而首页中自然就要放置最吸引顾客的内容,所以,在这里选择的是在首页显示出最新的书籍和最新的促销信息书籍。
由于主页的大小限制,所以这里每一种只列出最新的一本即可。
另外,由于电子商城中有时会有通知贴出,所以公告也必须在首页显示。
确定了之后,现在开始构建主页。
第一步很重要,因为设置了母版页,所以在一下每个页面的创建中药选择刚刚创建的“母版”,即在添加新项的时候选择“选择母版页”选项。
然后再出现的选择母版页面班中选择建立的母版页,在单击“确定”按钮。
打开页面切换到设计模式,此时可以看到刚添加的到页面已经有了母版页中的元素。
此时就可以开始在页面中添加相应的元素了。
为了显示最新的上架书籍,需要用一个Table控件,其中添加3个label,分别用来显示书籍名称,书籍简介和书籍价格。
在添加一个Image控件,用来显示书籍图片。
然后再添加两个linkBotton控件,用来实现“详细信息”和“订