aspnet课程设计报告
计算机与信息工程学院
课程设计
题目:网上购物系统
姓名:__________ XXX ____________ 学号:_________ XXXX ___________ 专业:计算机科学与技术
指导教师:________ XXX ______________ 起止日期:—
目录
1 引言............................ 错误! 未定义书签。
2 需求分析........................... 错误! 未定义书签。
数据流图. .............................................. 错误!未定义书签。
数据字典. .............................................. 错误!未定义书签。
3 系统设计........................... 错误! 未定义书签。系统架构设计. ............................................ 错误!未定义书签。系统功能模块划分. ....................................... 错误!未定义书签。
系统数据库设计. ......................................... 错误!未定义书签。
4 系统实现........................... 错误! 未定义书签。
前台功能. .............................................. 错误!未定义书签。
会员注册登录. ....................................... 错误!未定义书签。
商品展示. .......................................... 错误!未定义书签。
商品搜索. .......................................... 错误!未定义书签。
商品评论. .......................................... 错误!未定义书签。
网站公告. .......................................... 错误!未定义书签。
个人信息更改. ....................................... 错误!未定义书签。
地址簿管理. .......................................... 错误!未定义书签。
订单明细查询. ....................................... 错误!未定义书签。
购物车管理. .......................................... 错误!未定义书签。
后台功能. .............................................. 错误! 未定义书签。用户登录与后台管理. ................................. 错误!未定义书签。
商品管理. .......................................... 错误!未定义书签。
商品类别管理. ....................................... 错误!未定义书签。
商品评论管理. ....................................... 错误!未定义书签。
网站公告管理. ....................................... 错误!未定义书签。
订单管理. .......................................... 错误!未定义书签。
会员档案管理. ....................................... 错误!未定义书签。
管理员密码修改. ................................... 错误!未定义书签。
5 总结............................ 错误! 未定义书签。
6 参考文献........................... 错误! 未定义书签。
1 引言
在国家大力推进信息化建设的宏观背景下,城市网络基础设施及应用水平均已得到了较大的完善和提升。愈来愈多的商贸服务企业意识到了用现代信息技术改造传统经营方式,用电子商务手段提升管理和服务水平的重要性。已有许多企业在着手计划或已进行自身的电子商务建设,这就有了对商贸服务业电子商务应用平台的迫切需求。
网上购物是一个电子商务平台。对于消费者来说,可以在家“逛商店” ,订货不受时间的限制;获得较大量的商品信息,可以买到当地没有的商品;网上支付较传统拿现金支付更加安全,可避免现金丢失或遭到抢劫;从订货、买货到货物上门无需亲临现场,既省时又省力;由于网上商品省去租店面、召雇员及储存保管等一系列费用,总的来说其价格较一般商场的同类商品更便宜。对于商家来说,网上购物是宣传企业形象的一种强有力的手段,是一种廉价高效的方式。其优势在于发布信息及时、准确,图文并茂,及时刷新。任何新登商品和促销、广告信息都可以在第一时间呈现在消费者面前。消费者与商家之间可以实现及时互动,商家可以了解到市场的最新需求。对于整个市场经济来说,这种新型的购物模式可在更大的范围内、更多的层面上以更高的效率实现资源配置。
2 需求分析
本系统总体目标是为了实现产品的在线购物。通过系统实现网上购物的多项功能,其中主要是管理员对商品的管理实现和用户的购物的实现。用户在线浏览所有商品,按需求搜索相关商品,以及注册为会员后对商品选购的操作,购物结束后生成订单。管理员则可对商品的添加,对商品的归类,对用户购物订单进行处理,以及管理员对网站进行维护操作。数据流图
数据流图(DFD----Data Flow Diagram)是描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况,就是采用图形方式来表示系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。
1、系统顶层数据流图(如图2-1所示)
2、会员子系统数据流图(如图2-2所示)
3、管理员子系统数据流图(如图2-3所示)。
数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用是在软件的分析和设计过程中提供关于数据的描述信息。一般说来,数据字典应该由下列四类元素构成:数据元素,数据流,数据存储和数据处理。
数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。本系统所涉及到的数据存储表如表2-1至表2-9所示。
表2-1数据存储之会员信息表
名字会员信息表
描述记录用户在购物网站的注册信息
组成会员编号,邮箱地址,会员密码,会员真实姓名
表2-2数据存储之管理员信息表
表2-5数据存储之商品评论信息表
3系统设计
系统架构设计
本系统采用三层架构设计,将整个业务应用划分为表示层、业务逻辑层、数据访问层三层。
数据访问层DAL用于实现与数据库的交互和访问,从数据库获取数据或保存数据到数据库的部分。
业务逻辑层BLL:业务逻辑层承上启下,用于对上下交互的数据进行逻辑处理,实现业务目标。
表示层UI :主要实现和用户的交互,接收用户请求或返回用户请求的数据结果的展现,而具体的数据处理则交给业务逻辑层和数据访问层去处理。
三层架构是将系统按其作用分成三部分,每部分解决自己负责的流程。三层架构的功用之处,在于驾驭大型web程序的结构,使之便于管理和扩展。
系统功能模块划分
系统功能模块图如图3-1所示
图3-1系统功能模块图
系统数据库设计
本系统采用SQL Server 2005 建立和维护数据库,系统中共有两个数据库:商城数据库
评论信息、订单信息、订单详情信息、订单状态信息、会员信息、地址薄信息、管理员信息、公告信息;存储购物车信息。
电子商城数据库包含以下10 个表:商品表(Commodity) 、商品类型表(CommodityType)、商品评论表(CommodityComment)会员表(Users)、地址薄表(Address) 、订单表(Orders) 、订单详情表(OrderDetail) 、订单状态表(OrderState) 、管理员表(Admin) 、公告表(News) 。
(1)会员表(Users)用于记录会员的基本信息,包括会员编号、邮箱地址、会员密码、真实姓名。其中会员编号为主键。会员表结构如图3-2 所示。
图3-2 会员表
(2)地址薄表
(Address) 用于记录会员所购买商品的配送地址信息,包括地
址编号、邮箱地址、收货人、邮寄地址、邮政编码、联系方式。其中地址编号为主键。地址薄表结构如图3-3 所示。
图3-3 地址薄表
(3)管理员表(Admin) 用于记录后台管理员的基本信息,包括管理员编号、管理员名、管理员密码。其中管理员编号为主键。管理员表结构如图3-4 所示。
图3-4 管理员表
(4)公告表(News)用于记录网站的公告信息,包括公告编号、公告标题、公告内容、公
告来源、公告浏览量、公告发布时间。其中公告编号为主键。公告表结构如图3-5 所示。
图3-5 公告表
(5)商品表(Commodity)用于记录购物网站的商品信息,包括商品编号、商品名、商品类型编号、商品描述、商品市场价、商品会员价、商品售出量、商品图片、商品浏览量、商品发
布时间。其中商品编号为主键。商品表结构如图3-6 所示。
图3-6 商品表
⑹商品类型表(CommodityType)用于记录商品的类别信息,包括商品类型编号、商品类型
名、父类型编号。其中商品类型编号为主键。商品类型表结构如图3-7 所示。
图3-7 商品类型表
(7)商品评论表(CommodityComment用于会员对商品的评论信息,包括商品
评论编号、商品编号、评论人、评论级别、评论内容、评论时间。其中商品评论编号为主键。商品评论表结构如图3-8 所示
图3-8 商品评论表
(8) 订单状态表(OrderState) 用于记录订单的状态信息、包括订单状态编号订单状态名。其中订单状态编号为主键。订单状态表结构如图3-9 所示。
图3-9 订单状态表
(9) 订单表(Orders) 用于记录会员在购物网站所下发订单信息,包括订单编号、订单人、地址编号、订单总价、订单时间、订单状态、邮寄类型、订单号。
其中订单编号为主键。订单表结构如图3-10 所示
图3-10 订单表
(10) 订单详情表(OrderDetail) 用于记录每个订单的详细购物信息,包括订单详情编号、订单号、商品编号、商品购买量。其中订单详情编号为主键。订单详情表结构如图3-11 所示。
图3-11 订单详情表
4 系统实现
前台功能
会员注册登录
会员注册页面如图4-1 所示。如果输入信息有误则会提示错误信息,需要重新输入。
图4-1 会员注册页面主要代码如下:protected void
ok_Click( object sender, EventArgs e)
users_BLL = new ();
();
( }
会员登录页面如图4-2所示。如果输入信息有误则会提示错误信息, 需要重 新输入。
主要代码如下:
protected void lmageLogin_Click( object sender, ImageClickEventArgs e)
{
users_BLL = new ();
=txtEmail .Text ;
false );
"");
■As*
if ().Tables [0]. ==1)
{
(txtEmail .Text ,
false );
Illi
);
图4-2会员登录页面
商品展示
商品展示页面如图4-3所示。
图4-3商品展示页面
主要代码实现如下:
private void Bind()
{
commodityType_BLL = new ();
=();
();
}
protected void RepeaterFather_ltemDataBound( object sender, RepeaterltemEve
ntArgs e)
{
DataRowView dr = ( DataRowVieW) int id =
(dr[ "commodityTypeId"]);
Repeater repeaterSon = ( Repeater) "RepeaterSon");
commodityType_BLL = new ();
=id;
=();
();
DataList dataListFather = ( DataList ) "DataListFather");
commodity_BLL = n ew();
=id;
=();
();
}
商品搜索
在如图4-4所示的商品搜索页面中选择商品类型并输入关键字,点击“找商品”按钮搜索商品
图 4-4 商品搜索页面
搜索结果页面如图 4-5 所示。
图 4-5 商品搜索结果页面 主要代码如下: protected void
search_Click( object sender, EventArgs e) {
if == "" )
{
( "" ); }
else
{
( "~/web/commodityTypeId=" +ddlSon .Selec tedValue + " & key="
+txtKey .Text .Trim()); }
private void Bind() {
int id = [ "commodityTypeId" ]);
string key = [ "key" ];
commodity_BLL = new ();
= id;
= key;
DataSet ds = ();
= [0].DefaultView;
= true ;
= 15;
= pds;
();
if == 0)
{
= true ;
= false ;
return ;
}
= = + 1).ToString();
= }
商品评论
会员登录后才能发表评论。商品评论页面如图4-6 所示
图4-6 商品评论页面如果为匿名用户则提示如图4-7 所示的提示信息
图4-7 提示信息
主要代码如下:
protected void ok_Click( object sender, EventArgs e)
{
if (Profile .IsAnonymous )
{
( "" ); return ;
}
int commodityId = [ "commodityId" ]); string emailAddress = ;
string commentContent = ( "txtContent" ) as TextBox ).Text; DateTime commentTime = ;
commodityComment_BLL = new ();
= commodityId;
= emailAddress;
= commentLevel;
= commentContent;
= commentTime;
();
Response .Redirect (
"commodityId=" + commodityId);
网站公告
网站公告信息页面如图4-8 所示
?国廊芽工怕典
图4-8网站公告信息
主要代码如下:
private void Bind()
{
BLL . News_BLL n ews_BLL= new ();
=();
();
}
个人信息更改
个人信息更改页面如图4-9所示。
图4-9个人信息更改页面主要代码如下:
protected void ok_Click( object sender, EventArgs e)
users BLL = new ();
{
if [0].Rows[0][ "userPwd" ].ToString()==OldPwd .Text ) users BLL = new ();
(); address_BLL = new ();
}
else
{
( "" ); } }
地址簿管理 地址薄管理页面如图 4-10 所示。
图 4-10 地址薄管理页面
主要代码如下:
private void Bind()
{
address_BLL = new ();
一 J
DataSet ds = (); if [0]. < 1)
{
= false ;
return ;
} = ds; ();
}
protected void addAddress_Click( object sender, EventArgs e)